Autor |
Beitrag |
Akut-Programming
      
Beiträge: 69
WinXP, Win2000
Delphi 7 Enterprise, Delphi 5 Prof.
|
Verfasst: Do 21.08.03 13:07
Hi Leuts, bins nochma!
Unzwar folgendes, bin grad dabei n kleen Dateibrowser zu proggn nur da steh ich jetzt grad vor n Problem.  Ich wollte ini Dateien verwenden um Einstellungen zu speichern. Jetzt hab ich mit Hilfe eines hier veröffentlichten Tutorial dies versucht zu verwirklichen. Nur bekomme ich beim Compilieren der Anwendung folgenden Fehler:
Zitat: | [Fehler] Unit2.pas(75): Record, Objekt oder Klassentyp erforderlich |
Weiß da jemand wie ich ihn beheben kann? 
_________________ Gruß,
Akut - Programming
Zuletzt bearbeitet von Akut-Programming am Do 21.08.03 15:11, insgesamt 1-mal bearbeitet
|
|
Tino
      

Beiträge: 9839
Erhaltene Danke: 45
Windows 8.1
Delphi XE4
|
Verfasst: Do 21.08.03 13:28
Hi!
Besser ist es wenn du uns den Sourcecode mal postest. Dann können wir auch helfen.
Gruß
Tino
|
|
Akut-Programming 
      
Beiträge: 69
WinXP, Win2000
Delphi 7 Enterprise, Delphi 5 Prof.
|
Verfasst: Do 21.08.03 14:00
okay, dann hab ich hier mal n bissl code! Is die Unit, in der der Fehler auftritt.
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: 22: 23: 24: 25: 26: 27: 28: 29: 30: 31: 32: 33: 34: 35: 36: 37: 38: 39: 40: 41: 42: 43: 44: 45: 46: 47: 48: 49: 50: 51: 52: 53: 54: 55: 56: 57: 58: 59: 60: 61: 62: 63: 64: 65: 66: 67: 68: 69: 70: 71: 72: 73: 74: 75:
| unit Unit2;
interface
uses Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, Buttons, ComCtrls, IniFiles;
type TForm2 = class(TForm) PageControl1: TPageControl; TabSheet1: TTabSheet; CheckBox1: TCheckBox; CheckBox2: TCheckBox; CheckBox3: TCheckBox; BitBtn1: TBitBtn; procedure BitBtn1Click(Sender: TObject); private { Private-Deklarationen } public { Public-Deklarationen } end;
var Form2: TForm2;
implementation
uses Unit1;
{$R *.DFM}
procedure TForm2.BitBtn1Click(Sender: TObject); var pfad:string; ini:TIniFile; begin pfad:=ExtractFilePath(ParamStr(0)); if CheckBox1.Checked=True then begin try ini:=TIniFile.Create(pfad+'einstellungen.ini'); ini.WriteInteger('einstellungen','LoadNotice',1); finally ini.free; end else try ini:=TIniFile.Create(pfad+'einstellungen.ini'); ini.WriteInteger('einstellungen','LoadNotice',0); finally ini.free;
if CheckBox2.Checked=True then begin try ini:=TIniFile.Create(pfad+'einstellungen.ini'); ini.WriteInteger('einstellungen','WindowHeight',Form1.Height); ini.WriteInteger('einstellungen','WindowWidth',Form1.Width); finally ini.free; end else try ini:=TIniFile.Create(pfad+'einstellungen.ini'); ini.WriteInteger('einstellungen','WindowHeight',605); ini.WriteInteger('einstellungen','WindowWidth',853); finally ini.free;
if CheckBox3.Checked=True then begin try ini:=TIniFile.Create(pfad+'einstellungen.ini'); ini.WriteInteger('einstellungen','autostart',1); finally ini.free; end else try ini:=TIniFile.Create(pfad+'einstellungen.ini'); ini.WriteInteger('einstellungen','autostart',0); finally ini.free; end; Form2.Close; end; end. //-----------------------> Hier kommt der Fehler |
_________________ Gruß,
Akut - Programming
|
|
Keldorn
      
Beiträge: 2266
Erhaltene Danke: 4
Vista
D6 Prof, D 2005 Pro, D2007 Pro, DelphiXE2 Pro
|
Verfasst: Do 21.08.03 14:08
Hallo
wenn man den Code ein wenig einrückt, sieht man die Fehler
Delphi-Quelltext 1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11:
| if CheckBox1.Checked=True then begin try ini:=TIniFile.Create(pfad+'einstellungen.ini'); ini.WriteInteger('einstellungen','LoadNotice',1); finally ini.free; end; end else ... |
es heißt
Delphi-Quelltext 1: 2: 3: 4: 5:
| try ... finally ... end; |
bei dir fehlen ein paar ends. rück den code mal ein wenig anders ein und ergänze die fehlenden ends
Mfg Frank
_________________ Lükes Grundlage der Programmierung: Es wird nicht funktionieren.
(Murphy)
|
|
Keldorn
      
Beiträge: 2266
Erhaltene Danke: 4
Vista
D6 Prof, D 2005 Pro, D2007 Pro, DelphiXE2 Pro
|
Verfasst: Do 21.08.03 14:15
öhm warum öffnets du jedes mal die ini und
gehts nicht so vor
ini erstelln
wenn checkbox1 dann schreibe wert1 sonst schreibe Wert2
wenn checkbox2 dann schreibe wert3 sonst schreibe Wert4
ini schließen
_________________ Lükes Grundlage der Programmierung: Es wird nicht funktionieren.
(Murphy)
|
|
Akut-Programming 
      
Beiträge: 69
WinXP, Win2000
Delphi 7 Enterprise, Delphi 5 Prof.
|
Verfasst: Do 21.08.03 14:16
Hey Spitze!!
Es funzt!! Ganz großes DANKE!! 
_________________ Gruß,
Akut - Programming
|
|
Akut-Programming 
      
Beiträge: 69
WinXP, Win2000
Delphi 7 Enterprise, Delphi 5 Prof.
|
Verfasst: Do 21.08.03 14:18
Keldorn hat folgendes geschrieben: | warum gehts nicht so vor
ini erstelln
wenn checkbox1 dann schreibe wert1 sonst schreibe Wert2
wenn checkbox2 dann schreibe wert3 sonst schreibe Wert4
ini schließen |
Meintest du, das ich dies bei der Checkbox auf OnClick machen sollte?
_________________ Gruß,
Akut - Programming
|
|
Keldorn
      
Beiträge: 2266
Erhaltene Danke: 4
Vista
D6 Prof, D 2005 Pro, D2007 Pro, DelphiXE2 Pro
|
Verfasst: Do 21.08.03 14:29
nee, ich mein das so:
Delphi-Quelltext 1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: 22: 23: 24: 25: 26:
| procedure buttonklick; ...... pfad:=ExtractFilePath(ParamStr(0)); ini:=TIniFile.Create(pfad+'einstellungen.ini'); try if CheckBox1.Checked=True then ini.WriteInteger('einstellungen','LoadNotice',1) else ini.WriteInteger('einstellungen','LoadNotice',0); if CheckBox2.Checked=True then begin ini.WriteInteger('einstellungen','WindowHeight',Form1.Height); ini.WriteInteger('einstellungen','WindowWidth',Form1.Width); end else begin ini.WriteInteger('einstellungen','WindowHeight',605); ini.WriteInteger('einstellungen','WindowWidth',853); end; if CheckBox3.Checked=True then ini.WriteInteger('einstellungen','autostart',1) else ini.WriteInteger('einstellungen','autostart',0); finally ini.free; end; |
ungetestet, nur dein code umkopiert
und das ganze geht noch kürzer:
statt
Delphi-Quelltext 1: 2: 3: 4:
| if CheckBox1.Checked=True then ini.WriteInteger('einstellungen','LoadNotice',1) else ini.WriteInteger('einstellungen','LoadNotice',0); |
schreib mal:
Delphi-Quelltext 1:
| ini.Writebool('einstellungen','LoadNotice',checkbox1.checked) |
auslkesen entsprechend mit readbool
_________________ Lükes Grundlage der Programmierung: Es wird nicht funktionieren.
(Murphy)
|
|
Akut-Programming 
      
Beiträge: 69
WinXP, Win2000
Delphi 7 Enterprise, Delphi 5 Prof.
|
Verfasst: Do 21.08.03 14:43
Aber müsste ich bei der Sache nicht dann noch sagen, welchen Boolean er eintragen soll?
Quelltext 1:
| ini.Writebool('einstellungen','LoadNotice',checkbox1.checked) |
_________________ Gruß,
Akut - Programming
|
|
Akut-Programming 
      
Beiträge: 69
WinXP, Win2000
Delphi 7 Enterprise, Delphi 5 Prof.
|
Verfasst: Do 21.08.03 14:46
Ahh ja, okay verstehe auch deinen zweiten hinweis.
Zitat: | ini.Writebool('einstellungen','LoadNotice',checkbox1.checked) |
er wertet dann jeweils den boolean der checkbox aus und trägt diesen ein!?
_________________ Gruß,
Akut - Programming
|
|
Keldorn
      
Beiträge: 2266
Erhaltene Danke: 4
Vista
D6 Prof, D 2005 Pro, D2007 Pro, DelphiXE2 Pro
|
Verfasst: Do 21.08.03 14:46
Akut-Programming hat folgendes geschrieben: | Aber müsste ich bei der Sache nicht dann noch sagen, welchen Boolean er eintragen soll?
Quelltext 1:
| ini.Writebool('einstellungen','LoadNotice',checkbox1.checked) | |
checkbox1.checked ist doch schon ein bool
edit: genau
_________________ Lükes Grundlage der Programmierung: Es wird nicht funktionieren.
(Murphy)
|
|
Akut-Programming 
      
Beiträge: 69
WinXP, Win2000
Delphi 7 Enterprise, Delphi 5 Prof.
|
Verfasst: Do 21.08.03 14:49
Keldorn hat folgendes geschrieben: |
checkbox1.checked ist doch schon ein bool
|
Yo, hab ich jetzt auch raus! Musste n paar mitn Kopp vor de Wand kloppen  , dann isses mir aufgefallen! *g*
_________________ Gruß,
Akut - Programming
|
|
Akut-Programming 
      
Beiträge: 69
WinXP, Win2000
Delphi 7 Enterprise, Delphi 5 Prof.
|
Verfasst: Do 21.08.03 14:50
Ich muss sagen, sehr nett, die Hilfe die man hier bekommt. In manch anderen Foren hätt man auf sowas keene Antwort bekomm. Also noch ma n rießen Dank für die Hilfe. 
_________________ Gruß,
Akut - Programming
|
|
|