Entwickler-Ecke
Grafische Benutzeroberflächen (VCL & FireMonkey) - SpeedBtn mit Mausklick:Fehler,gleiche Routine per Tast. ok
jjturbo - Mo 28.02.11 14:52
Titel: SpeedBtn mit Mausklick:Fehler,gleiche Routine per Tast. ok
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
jjturbo - Mi 02.03.11 08:47
*push*
Hat keiner eine Idee, wie so etwas zu Stande kommen könnte?
Ich habe das Problem jetzt auch in einem anderen Formular....
Gruß Oliver
jaenicke - Mi 02.03.11 09:00
Naja, hast du es denn einmal mit einem normalen Speedbutton versucht?
Und wo genau tritt denn die Zugriffsverletzung auf, wenn es dort auch auftreten sollte?
Gerd Kayser - Mi 02.03.11 09:38
Ich habs hier mit D2006 und XE unter Windows 7 32-Bit getestet. Es funktioniert einwandfrei. Daß das Problem jetzt auch bei einem anderen Formular auftritt, deutet für mich darauf hin, daß Du vielleicht irgendwo Speicherstellen in Deinem Programm überschreibst.
jjturbo - Mi 02.03.11 09:58
In dem anderen Formular ist es übrigens ein normaler TButton.
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2026 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!