Hallo,
ich habe ein kleines Programm geschrieben, das ein Script laden kann und dieses dann interpretiert. Auf dem Form gibt es ein Start und ein Stop Button. Die Buttons werden über eine Actionlist benutzt. Ich verwende in der Schleife, die mir das Script abarbeitet auch mehrmals Application.ProcessMessages um die Kontrolle an das Programm zu übergeben.
Nun mein Problem:
Die Ereignisroutine des Stop Buttons die auf OnClick liegt wird nur angesprungen wenn ich mit der Maus wie wild auf dem Button rumclicke, irgendwann wird dann mal das Ereignis OnClick ausgelöst und mein Programm stoppt. Lege ich eine OnMouseDown Routine an, wird diese sofort angesprungen wenn ich das erste mal klicke, dann rufe ich darin zum testen die OnClick Routine auf.
Delphi-Quellcode:
Procedure TScriptFRM.StopScriptActExecute(Sender: TObject); // Routine liegt auf OnClick
Begin
Data.RunStatus := rsStop;
RunScriptButton.Action := RunScriptAct;
End;
procedure TScriptFRM.ScriptStopButtonMouseDown(Sender: TObject;
Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
begin
if Button = mbLeft then
StopScriptActExecute(Sender);
end;
Hat jemand eine Idee wiso meine OnClick nicht funktioniert ?
Gruß
MrOuzo