AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Zwei Combobox

Ein Thema von superstar025 · begonnen am 6. Sep 2004 · letzter Beitrag vom 6. Sep 2004
Antwort Antwort
Seite 1 von 2  1 2      
superstar025

Registriert seit: 5. Jul 2004
Ort: Beelen
140 Beiträge
 
Delphi 7 Professional
 
#1

Zwei Combobox

  Alt 6. Sep 2004, 10:34
Hallo ich möchte das wenn ich zwei Combobox geändert habe button2.enabled=:true setzen.
wie mach ich das??



mfg matthias
Matthias
  Mit Zitat antworten Zitat
Benutzerbild von Wuaegner
Wuaegner

Registriert seit: 8. Feb 2004
406 Beiträge
 
Delphi 6 Enterprise
 
#2

Re: Zwei Combobox

  Alt 6. Sep 2004, 10:45
Hallo!
Wenn es bei nur zwei Comboboxen bleibt, könntest du zwei Variablen global deklarieren:
CB1Geändert: boolean; CB2Geändert: boolean;
Dann bei den OnChangeEreignissen der Boxen CB1Geändert bzw. CB2Geändert auf true setzen und dahinter schreiben(Im OnchangeEreignis von ComboBox1): if CB2Geändert= true then Button1.enabled:= true; Vielleicht keine schöne Variante, müsste aber funktionieren!

Gruß Flo
Wuaegner
  Mit Zitat antworten Zitat
superstar025

Registriert seit: 5. Jul 2004
Ort: Beelen
140 Beiträge
 
Delphi 7 Professional
 
#3

Re: Zwei Combobox

  Alt 6. Sep 2004, 11:08
versteh ich nicht ganz alles was du meinst

kannst du das verfeinert bzw im quelltext deutlich machen?

danke im vorraus
matthias

Matthias
  Mit Zitat antworten Zitat
Benutzerbild von idontwantaname
idontwantaname

Registriert seit: 31. Aug 2004
Ort: Traiskirchen
575 Beiträge
 
Turbo Delphi für Win32
 
#4

Re: Zwei Combobox

  Alt 6. Sep 2004, 11:18
Hier ein Beispiel. Wenn Checkbox1 geändert wird, dann wird cb1 auf True gesetzt, genau das selbe bei Checkbox2. Noch dazu wird gefragt, ob schon beide geändert wurden.

Delphi-Quellcode:
var
  Form1: TForm1;
  cb1: Boolean = False;
  cb2: Boolean = False;

implementation

{$R *.dfm}

procedure TForm1.CheckBox1Click(Sender: TObject);
begin
   cb1 := True;
   if (cb1) and (cb2) then Button1.Enabled := True;
end;

procedure TForm1.CheckBox2Click(Sender: TObject);
begin
   cb2 := True;
   if (cb1) and (cb2) then Button1.Enabled := True;
end;
Oliver Hanappi
Besucht meine neue Homepage: http://oli.hux.de
  Mit Zitat antworten Zitat
Benutzerbild von Sharky
Sharky

Registriert seit: 29. Mai 2002
Ort: Frankfurt
8.252 Beiträge
 
Delphi 2006 Professional
 
#5

Re: Zwei Combobox

  Alt 6. Sep 2004, 11:21
Hai,

und um die IF-Abfrage zu vermeiden kannst Du es auch so schreiben:

Delphi-Quellcode:
var
  Form1: TForm1;
  cb1: Boolean = False;
  cb2: Boolean = False;

implementation

{$R *.dfm}

procedure TForm1.CheckBox1Click(Sender: TObject);
begin
   cb1 := True;
   Button1.Enabled := (cb1) and (cb2);
end;

procedure TForm1.CheckBox2Click(Sender: TObject);
begin
   cb2 := True;
   Button1.Enabled := (cb1) and (cb2);
end;
Stephan B.
"Lasst den Gänsen ihre Füßchen"
  Mit Zitat antworten Zitat
6. Sep 2004, 11:22
Dieses Thema wurde von "Sharky" von "Datenbanken" nach "VCL-Komponenten und Controls" verschoben.
Auch dies ist keine Datenbankfrage.
Bitte auf die richtige Sparte achten! Danke.
Benutzerbild von Matze
Matze
(Co-Admin)

Registriert seit: 7. Jul 2003
Ort: Schwabenländle
14.929 Beiträge
 
Turbo Delphi für Win32
 
#7

Re: Zwei Combobox

  Alt 6. Sep 2004, 11:23


Wuaegner meint, du sollt 2 Variablen global deklarieren:
Delphi-Quellcode:
var
  Form1: TForm1;
  CB1Geaendert, CB2Gaeändert: boolean;

implementation
im OnCnage der beiden ComboBoxen stellst du sie auf true:
Delphi-Quellcode:
procedure TForm1.ComboBox1Change(Sender: TObject);
begin
  CB1Geaendert := true;
end;

procedure TForm1.ComboBox2Change(Sender: TObject);
begin
  CB2Geaendert := true;
end;
Dann fragst du evtl in den OnChanges npch das ab:
Delphi-Quellcode:
if CB1Geaendert and CB2Geaendert then
  Button1.Enabled := false;
also dann so:
Delphi-Quellcode:
procedure TForm1.ComboBox1Change(Sender: TObject);
begin
  CB1Geaendert := true;
  if CB1Geaendert and CB2Geaendert then
    Button1.Enabled := false;
end;

procedure TForm1.ComboBox2Change(Sender: TObject);
begin
  CB2Geaendert := true;
  if CB1Geaendert and CB2Geaendert then
    Button1.Enabled := false;
end;
Ausfühlicher geht's glaub kaum mehr.


Edit: Mist, ich schreib nie mehr sowas langes
  Mit Zitat antworten Zitat
superstar025

Registriert seit: 5. Jul 2004
Ort: Beelen
140 Beiträge
 
Delphi 7 Professional
 
#8

Re: Zwei Combobox

  Alt 6. Sep 2004, 11:25
Danke für die Schnelle und ausführliche Hilfe


Matthias
  Mit Zitat antworten Zitat
Benutzerbild von Stevie
Stevie

Registriert seit: 12. Aug 2003
Ort: Soest
4.027 Beiträge
 
Delphi 10.1 Berlin Enterprise
 
#9

Re: Zwei Combobox

  Alt 6. Sep 2004, 11:26
Zitat von Sharky:
Hai,

und um die IF-Abfrage zu vermeiden kannst Du es auch so schreiben:

Delphi-Quellcode:
var
  Form1: TForm1;
  cb1: Boolean = False;
  cb2: Boolean = False;

implementation

{$R *.dfm}

procedure TForm1.CheckBox1Click(Sender: TObject);
begin
   cb1 := True;
   Button1.Enabled := (cb1) and (cb2);
end;

procedure TForm1.CheckBox2Click(Sender: TObject);
begin
   cb2 := True;
   Button1.Enabled := (cb1) and (cb2);
end;
Oder:
Delphi-Quellcode:
procedure TForm1.CheckBox1Click(Sender: TObject);
begin
   cb1 := True;
   Button1.Enabled := cb2;
end;

procedure TForm1.CheckBox2Click(Sender: TObject);
begin
   cb2 := True;
   Button1.Enabled := cb1;
end;
Warum auf Werte überprüfen, die schon bekannt sind???
Stefan
“Simplicity, carried to the extreme, becomes elegance.” Jon Franklin

Delphi Sorcery - DSharp - Spring4D - TestInsight
  Mit Zitat antworten Zitat
Benutzerbild von Sharky
Sharky

Registriert seit: 29. Mai 2002
Ort: Frankfurt
8.252 Beiträge
 
Delphi 2006 Professional
 
#10

Re: Zwei Combobox

  Alt 6. Sep 2004, 11:28
Zitat von Stevie:
...Warum auf Werte überprüfen, die schon bekannt sind???
Hai Stevie,
das habe ich gemacht um den Fall zu berücksichtigen das an anderer Stelle eine der Variablen wieder auf False gesetzt wird
Aber im Kontext der Frage hast Du mit deinem Code natürlich recht
Stephan B.
"Lasst den Gänsen ihre Füßchen"
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 21:42 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