Supergrover heeft een vogeltje gered. Dat vogeltje zat heel hoog in een boom en durfde niet naar beneden te klimmen!
Heb je de Delphi - help er al eens op nageslagen?
File management routines...
FileGetDate
etc...
Waarin wil je de files sorteren? In een ListView, op een report....
File management routines...
FileGetDate
etc...
Brabrabra schreef op 13 augustus 2002 @ 16:45:
En is er ook een gemakkelijk trucje om files makkelijk te sorteren op date of type of size of moet je daar allemaal zelf procedures voor schrijven?
Waarin wil je de files sorteren? In een ListView, op een report....
https://fgheysels.github.io/
Ik gebruik nu voor de datum dit:
fs.Create(FileListBox1.Items[k],fmOpenRead);
tijdstempel:=FileGetDate(fs.Handle);
datum:=FileDateToDateTime(tijdstempel);
Maar dan krijgt hij telkens bij de bovenste regel een Access Violation...
Ik wil het sorteren in een TListView met ViewStyle vsReport inderdaad ja
fs.Create(FileListBox1.Items[k],fmOpenRead);
tijdstempel:=FileGetDate(fs.Handle);
datum:=FileDateToDateTime(tijdstempel);
Maar dan krijgt hij telkens bij de bovenste regel een Access Violation...
Ik wil het sorteren in een TListView met ViewStyle vsReport inderdaad ja
Supergrover heeft een vogeltje gered. Dat vogeltje zat heel hoog in een boom en durfde niet naar beneden te klimmen!
Kijk eens in de Delphi Help naar de OnColumnClick en OnCompare Events van de ListView....Ik wil het sorteren in een TListView met ViewStyle vsReport inderdaad ja
https://fgheysels.github.io/
OK, het sorteren werkt!
Ik zit nog met die Access Violation. Weet iemand wat ik hier aan moet doen?
Ik zit nog met die Access Violation. Weet iemand wat ik hier aan moet doen?
Supergrover heeft een vogeltje gered. Dat vogeltje zat heel hoog in een boom en durfde niet naar beneden te klimmen!
F1 gebruiken, die toets zit er nou eenmaal.
fs := TFileWhatEver.Create(File....
fs := TFileWhatEver.Create(File....
oogjes open, snaveltjes dicht
Je probeert hier in de eerste regel een constructor (Create) aan te roepen van een filestream die nog niet bestaat. Dat gaat natuurlijk niet goed. Wat je zou moeten doen, is de constructor van de TFileStream class aanroepen. De constructor retourneert dan een instantie van de class.Brabrabra schreef op 13 augustus 2002 @ 21:16:
Ik gebruik nu voor de datum dit:
fs.Create(FileListBox1.Items[k],fmOpenRead);
tijdstempel:=FileGetDate(fs.Handle);
datum:=FileDateToDateTime(tijdstempel);
Maar dan krijgt hij telkens bij de bovenste regel een Access Violation...
code:
1
2
3
4
| fs := TFileStream.Create(FileListBox1.Items[k], fmOpenRead);
tijdstempel := FileGetDate(fs.Handle);
datum := FileDateToDateTime(tijdstempel);
fs.Free; // fs vernietigen, geheugen terugclaimen |
De class (bijvoorbeeld THond) is eenvoudig gezegd de definitie van hoe een object eruit ziet. Het object zelf (bijvoorbeeld Bello) is een instantie van de class (Engels: instance). Een instantie creëer je met een constructor (meestal Create) en vernietig je met Free (dus niet met de destructor Destroy!).
Om er zeker van te zijn dat je bij een foutmelding geen geheugenlek krijgt, is het vaak verstandig om een try...finally constructie te gebruiken:
code:
1
2
3
4
5
6
7
| Bruto := THond.Create; try Bruto.StartBlaffen; Bruto.MuilHouden := True; finally Bruto.Free; end; |
Een goede grap mag vrienden kosten.
Pagina: 1