Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi Checkboxen und FormCreate (https://www.delphipraxis.net/105426-checkboxen-und-formcreate.html)

Spanky 21. Dez 2007 14:15


Checkboxen und FormCreate
 
Hallo,
ich habe ein kleines Problem mit den Checkboxen. Bei einem Programmtstart soll eine Checkbox gecheckt sein oder auch nicht, je nachdem, was eingestellt ist.

Delphi-Quellcode:
procedure TfrmMain.FormCreate(Sender: TObject);
begin
  if ... then
  Checkbox1.Checked := true
  else
  CheckBox1.Checked := false;
end;
Die Eigenschaft der Checkbox ist auf False gesetzt. Aber schon beim Programmstart soll die Eigenschaft auf True oder False gesetzt werden. Nun wird aber die Checkbox IMMER auf False gesetzt... :wall:

Wie kann man dieses Problem lösen? :?

Die Muhkuh 21. Dez 2007 14:16

Re: Checkboxen und FormCreate
 
Den Code dazu hast Du, jetzt musst Du in der If-Abfrage nur noch auf das Überprüfen, was die Checkbox dazu bringen soll, gechecked oder eben nicht gechecked zu sein.

Spanky 21. Dez 2007 14:18

Re: Checkboxen und FormCreate
 
Das ist mir schon klar...
Aber wenn ich jetzt folgendes schreibe:

Delphi-Quellcode:
procedure TfrmMain.FormCreate(Sender: TObject);
begin
  Checkbox1.Checked := true;
end;
Ist die Checkbox trotzdem NICHT gecheckt.

RavenIV 21. Dez 2007 14:22

Re: Checkboxen und FormCreate
 
Ich würde das auch nicht ins FormCreate, sondern ins FormShow rein schreiben.

Das FormCreate wird evtl. nur einmal aufgerufen, nämlich dann wenn das Form erzeugt wird.
Und das kann (je nach dem, wie Du das eingestellt hast bei den Projektoptionen) nur beim Programmstart passieren.
FormShow wird dann aufgerufen, wenn das Formular angezeigt wird.

Spanky 21. Dez 2007 14:24

Re: Checkboxen und FormCreate
 
Das klappt. Danke. :-D

angos 21. Dez 2007 14:27

Re: Checkboxen und FormCreate
 
Zitat:

Zitat von RavenIV
Ich würde das auch nicht ins FormCreate, sondern ins FormShow rein schreiben.
[...]

Und ich tippe, das genau da das Problem liegen könnte ;). Wenn das Form.Create durchgeführt wird, dann sollte da auch definitiv an genau der Stelle die cbx auf true stehen. Kann es sein, dass du im FormShow oder irgendnem OnPaint die checkbox quasi ungewollt direkt wieder auf False setzt?

Mfg
Ansgar

PS: Die Idee von RavenIV ist trotzdem sehr gut, ich mache das eig. auch immer im OnShow!

Spanky 21. Dez 2007 14:28

Re: Checkboxen und FormCreate
 
Ja, das war genau das Problem. :wall:


Alle Zeitangaben in WEZ +1. Es ist jetzt 23:25 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz