Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Delphi CheckBox anklicken (https://www.delphipraxis.net/24496-checkbox-anklicken.html)

abi 22. Jun 2004 08:19


CheckBox anklicken
 
Hallo
ich habe mehrere Checkboxen, jetzt soll immer nur eine Aktiv sein.

Das habe ich mit folgendem Code gelöst.
Code:
procedure TForm6.NummerClick(Sender: TObject);
begin

 // Nummer.Checked    := True;
  Geber.Checked     := False;
  DeviceName.Checked := False;
  Aufloesung.Checked := False;
  Seriennummer.Checked := False;
  Datum.Checked       := False;
  Arbeiter.Checked    := False;
  Abteilung.Checked   := False;

  if Nummer.Checked = true then begin
  unit1.Form1.qrSuchen.Close;
  unit1.Form1.qrSuchen.SQL.Delete (unit1.Form1.qrSuchen.SQL.Count-1);
  unit1.Form1.qrSuchen.SQL.Add('ORDER BY Nummer ASC');
  unit1.Form1.qrSuchen.Open;
  end;
end;
Mein Problem ist jetzt. Wenn eine box aktiv ist und ich eine andere auswählen will.
Muss ich zweimal auf die andere clicken, aber ich würde dies gern mit einem machen.

gruß
abi

Sharky 22. Jun 2004 08:24

Re: CheckBox anklicken
 
Hai abi,

warum nimmst Du denn für diesen Fall keine TRadioGroup?

abi 22. Jun 2004 08:27

Re: CheckBox anklicken
 
Hallo Sharky
ja auf die bin ich auch schon gekommen.

Kannst du mir dann noch mal kurz sagen warum ich bei der RadioBox keine CheckBoxen nehmen kann.

Denn wenn ich diese nehme ist es des gleiche als wenn ich eine Group Box nehme.

Dann fällt mir noch was ein, kann ich das symbol von meinem RadioButton ändern.

Danke
abi

shmia 22. Jun 2004 08:30

Re: CheckBox anklicken
 
Zitat:

Zitat von abi
ich habe mehrere Checkboxen, jetzt soll immer nur eine Aktiv sein.

Denk daran, dass du auch nach mehreren Kriterien sortieren kannst.
Also z.B. aufsteigend sortiert nach Abteilung und innerhalb der Abteilung aufsteigend sortiert
nach Arbeiter.

Sharky 22. Jun 2004 08:33

Re: CheckBox anklicken
 
Zitat:

Zitat von abi
..Kannst du mir dann noch mal kurz sagen warum ich bei der RadioBox keine CheckBoxen nehmen kann....

Eine RadioGroup hat halt nichts mit CheckBoxen zu tun. Der Unterschied ist das bei TRadioGroup immer nur ein Eintrag ausgewählt sein kann. CheckBoxen sind ja dafür da mehrere auswählen zu können.

[Nachtrag]:
Hast Du dir schon einmal überlegt deien Datensätze in einem ListView anzuzeigen? Dann hast Du nicht die Probleme immer wieder die Daten aus der Datenbank zu holen nur weil sie in einer anderen Reihenfolge gezeigt werden sollen.

Stevie 22. Jun 2004 08:36

Re: CheckBox anklicken
 
Sharky hat recht. Bei einer Auswahl genau eines Elements sollte man eine RadioGroup nehmen.

Hier aber der Code für die CheckBox-Lösung;
Delphi-Quellcode:
procedure TForm1.CheckBoxClick(Sender: TObject);
var
  Checked: Boolean;
begin
  (Sender as TCheckBox).OnClick := nil;
  Checked := (Sender as TCheckBox).Checked;
  CheckBox1.Checked := False;
  CheckBox2.Checked := False;
  CheckBox3.Checked := False;
  (Sender as TCheckBox).Checked := Checked;
  (Sender as TCheckBox).OnClick := CheckBoxClick;
end;
Diese Methode allen CheckBoxen zuweisen

abi 22. Jun 2004 08:36

Re: CheckBox anklicken
 
Hallo ihr beiden
danke erst mal.
Shmia bei mir kann man nur Absteigend sotierend mehr geht nicht. Ich finde auch das des reicht.

Sharky ich würde mal sagen, wenns extra dafür ist. Dann sollte ich des auch so machen.

Dann werde ich die RadioBox nehmen. Aber ich würde des trotzdem gerne das Symbol ändern.

abi

abi 22. Jun 2004 08:44

Re: CheckBox anklicken
 
Hallo Sharky
auf die Idee mit dem Listview bin ich noch nicht gekommen.

Da ich ja höchsten 500 Daten haben, glaube ich nicht das dies so schlimm ist.

Und da dies nur neben Sache ist. Da ich dies zu meiner Suchfunktion dazu gemacht habe.

Mein größtes Problem ist derzeit das ich noch keine Daten in meiner Datenbank drin habe und dies wahrscheinlich auch nicht in der nächsten Zeit machen werde.

Kann ich leider nicht testen ob ich ein laufzeit Problem oder länge Warte zeiten habe.

Aber ich werde es mir merken und vielleicht mache ich es noch.

abi


Alle Zeitangaben in WEZ +1. Es ist jetzt 04:38 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