Moin Forum,
seht Euch mal folgenden Code an:
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10:
| procedure THauptForm.LMDSpeedButtonF10Click(Sender: TObject); begin Close; end;
procedure THauptForm.FormKeyDown(Sender: TObject; var Key: Word;Shift: TShiftState); begin if Key = VK_F10 then Close; end; |
Wenn ich LMDSpeedButtonF10 mit der Maus klicke, dann bekomme ich ein Zugriffsverletzung an Adresse 00000000, F-Taste F10 funktioniert ohne Fehler.
Aber warum?
Auch das hier funzt:
Delphi-Quelltext
1: 2: 3: 4: 5:
| procedure THauptForm.FormKeyDown(Sender: TObject; var Key: Word;Shift: TShiftState); begin if Key = VK_F10 then LMDSpeedButtonF10Click(nil); end; |
Ich habe mir jetzt so geholfen, da gehts dann auch per Mausklick auch ohne Fehler.
Delphi-Quelltext
1: 2: 3: 4:
| procedure THauptForm.LMDSpeedButtonF10Click(Sender: TObject); begin PostMessage(HauptForm.Handle,WM_CLOSE,0,0); end; |
Aber jetzt tritt das Problem auch in einem anderen Formular auf.
Ich hoffe Ihr könnt mir helfen? Danke im voraus!
Gruß, Oliver
Windows XP: Für die einen nur ein Betriebssystem - für die anderen der längste Virus der Welt...