Hossa,
Da habe ich mit meiner Antwort ja ganz schön was ausgelöst.
In diesem Fall sehe ich es allerdings nicht ganz so tragisch. der Aufruf
Delphi-Quellcode:
Timer1Timer(nil);
Timer1.enabled := true;
ist nun wirklich unproblematisch. Vielleicht wäre die Variante
Delphi-Quellcode:
if not Timer1.enabled then
Timer1Timer(nil);
end;
Timer1.enabled := true;
Richtiger.
bzw., wäre ein Timer-Objekt mit einer
startImmediate-Eigenschaft wünschenswert.
Zu den anderen Dingen muss ich euch recht geben.
Das erste, was man mit einer neuen visuellen Komponente machen sollte, ist, ihr einen sinnvollen NAmen zu geben.
Genauso gehört die Funktionalität des Programms in eigene Methoden. Die
GUI sollte diese Funktionalität lediglich steuern.
Bsp.
Delphi-Quellcode:
procedure ParseXML(fName: string);
begin
....
end;
procedure btnParseFile.click(sender : TObject);
begin
if FileExists(currentFile) then
ParseXML(currentFile)
else
application.MessageBox('File not found','Fehler',0);
end;