![]() |
MessageDlg bei Anklicken einer CheckBox
Hallo,
ich habe eine CheckBox, die defaultmäßig nicht angeharkt ist. Jetzt soll, wenn der User die CheckBox anharken will, ein MessageDlg mit einer Warnmeldung erscheinen. Das OnClick Ereignis ist hier wohl nicht anwendbar, oder? Ich speichere den jeweiligen Zustand der CheckBox in einer ini-Datei und stelle damit den zuletzt gewählten Zustand bei Aktivierung des Fensters wieder her. Wenn der jetzt auf true, also angeharkt war, wird scheinbar bei Aktivierung des Fensters auch ein OnClick Ereigniss ausgelöst, da der Defaultzustand ja false ist. Hoffe das ist jetzt verständlich... Gruß Gambit |
Re: MessageDlg bei Anklicken einer CheckBox
Zitat:
|
Re: MessageDlg bei Anklicken einer CheckBox
Hai Gambit,
mache es doch z.B. so:
Delphi-Quellcode:
var
foo : TNotifyEvent; begin foo := CheckBoxl.OnClick; CheckBox1.OnClick := nil; CheckBox1.Checked := Wert_aus_der_Ini; CheckBox1.OnClick := foo; end; |
Re: MessageDlg bei Anklicken einer CheckBox
Zitat:
|
Re: MessageDlg bei Anklicken einer CheckBox
@ Sharky:
So ganz habe ich das jetzt nicht verstanden, ist das nun um den Wert aus der Ini-Datei wiederherzustellen? Gruß Gambit |
Re: MessageDlg bei Anklicken einer CheckBox
Ich hatte dich so verstanden das dein OnClick ausgelösst wird wenn Du den Wert aus der INI zuweisst.
Das ist auch so. Das .OnClick einer Checkbox wird ausgelösst sobald sich der Wert von .Checked ändert. Mit dem Code mache ich ja nichts anderes als temporär der Checkbox kein OnClick zu zuordnen. Oder hatte ich dich jetzt total falsch verstanden? |
Re: MessageDlg bei Anklicken einer CheckBox
Ne, das hast du wohl nicht. Ich habe das jetzt auch mal so an der Stelle implementiert, wo ich den Wert aus der Ini-Datei wiederherstelle. Funzt auch soweit. Jetzt muss ich nur noch sehen, dass der MessageDlg nicht auch dann ausgelöst wird, wenn ich die ChechBox deaktivieren will. Aber das sollte ja nicht allzu schwer werden, hoffe ich.
Gruß Gambit |
Re: MessageDlg bei Anklicken einer CheckBox
Hi!
Überprüf doch dann zusätzlich beim OnClick ob sie gerade angehakt wurde oder eben nicht (musst halt gucken, ob im OnClick schon der neue Zustand vorherrscht oder noch der alte) Je nachdem zeigst du dann eben nur in einem der beiden Fälle die Meldung. Ciao Frederic |
Re: MessageDlg bei Anklicken einer CheckBox
ja, genauso oder ähnlich habe ich es jetzt auch gemacht. Einziger Schönheitsfehler ist vielleicht, dass die CheckBox jetzt erstmal angehakt wird und dann die Abfrage kommt, ob ich das wirklich tun will. Klicke ich auf Nein, wirds sie halt wieder deangehakt, wenn ich das mal so sagen darf...
Gruß Gambit |
Alle Zeitangaben in WEZ +1. Es ist jetzt 04:38 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz