AGB  ·  Datenschutz  ·  Impressum  







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

Aktion entsprechend ComboBox...

Ein Thema von Stern · begonnen am 7. Dez 2007 · letzter Beitrag vom 8. Dez 2007
Antwort Antwort
Seite 1 von 2  1 2      
Benutzerbild von Stern
Stern

Registriert seit: 26. Feb 2007
Ort: Köln
74 Beiträge
 
#1

Aktion entsprechend ComboBox...

  Alt 7. Dez 2007, 18:39
Hallo,

ich habe eine ComboBox, die über eine php-Datei gefüllt wird. Soweit funktioniert das auch.
Nun würde ich noch gerne eine Möglichkeit haben, in Abhängigkeit des ausgewählten Items eine bestimmte aktion auszuführen.

Bislang hätte ich das so gemacht:
Delphi-Quellcode:
if ComboBox1.Text = 'aktion1then
        qrMain.SQL.Clear;
        qrMain.SQL.Text:= 'SELECT blablabla;';
        qrMain.Active:= True;
        qrMain.open;
Nun habe ich allerdings das Problem, dass die ComboBox sehr umfangreich geworden ist. Mit den If-Abfragen komm ich da natürlich
nicht weit, da so in jedem Fall nur die letzte Aktion der ComboBox ausgeführt wird. Warum die IF-Abfrage übergangen wird, weiß ich nicht.
Wie könnte man noch abfragen, welches item ausgewählt wurde?

Liebe Grüße
Steffi
steffi
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.624 Beiträge
 
Delphi 12 Athens
 
#2

Re: Aktion entsprechend ComboBox...

  Alt 7. Dez 2007, 18:40
Über den ItemIndex evtl.?
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
Benutzerbild von Stern
Stern

Registriert seit: 26. Feb 2007
Ort: Köln
74 Beiträge
 
#3

Re: Aktion entsprechend ComboBox...

  Alt 7. Dez 2007, 18:45
Ok, bei 25 Items dann am besten über eine case-Abfrage?
Entschuldigt bitte diese dummen Fragen, aber ich bin noch ziemlich neu und nicht so wirklich firm, was hier am schnellsten von der performance
her wäre...

Liebe Grüße
Steffi
steffi
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.624 Beiträge
 
Delphi 12 Athens
 
#4

Re: Aktion entsprechend ComboBox...

  Alt 7. Dez 2007, 18:46
Haargenau.
Delphi-Quellcode:
case ComboBox.ItemIndex of
  0: Machwas;
  1: MachwasAnderes;
  ...
end;
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
marabu

Registriert seit: 6. Apr 2005
10.109 Beiträge
 
#5

Re: Aktion entsprechend ComboBox...

  Alt 7. Dez 2007, 19:01
Hallo Steffi,

der IF-Abfrage folgt ein einzelnes Statement, da du den BEGIN-END-Block vergessen hast. Grundsätzlich sollte der Wechsel des Items in einer ComboBox keine Aktion auslösen, die einen spürbaren Zeitverbrauch mit sich bringt.

Grüße vom marabu
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.624 Beiträge
 
Delphi 12 Athens
 
#6

Re: Aktion entsprechend ComboBox...

  Alt 7. Dez 2007, 19:04
Hi marabu,

so gut gemeint und richtig Dein Rat auch ist, ich habe nirgends lesen können, dass sie direkt im OnChange-Ereignis eine Aktion auslösen möchte.
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
Benutzerbild von Die Muhkuh
Die Muhkuh

Registriert seit: 21. Aug 2003
7.332 Beiträge
 
Delphi 2009 Professional
 
#7

Re: Aktion entsprechend ComboBox...

  Alt 7. Dez 2007, 19:05
Zitat von DeddyH:
Hi marabu,

so gut gemeint und richtig Dein Rat auch ist, ich habe nirgends lesen können, dass sie direkt im OnChange-Ereignis eine Aktion auslösen möchte.
Ich denke mal, dass marabu drauf hinweisen wollte, Detlef. Weil aus Steffis Beschreibung etwas derartiges beschreibt.
  Mit Zitat antworten Zitat
Benutzerbild von Stern
Stern

Registriert seit: 26. Feb 2007
Ort: Köln
74 Beiträge
 
#8

Re: Aktion entsprechend ComboBox...

  Alt 7. Dez 2007, 19:05
Kann ich bei in Delphi bei der Case-Abfrage immer nur eine Aktion pro item durchführen?
Also:
Delphi-Quellcode:
case ComboBox.ItemIndex of
  0: eineAktion;
  1: eineAktion;
  ...
end;
Was mache ich dann, wenn ich aber soetwas brauche?
Delphi-Quellcode:
case ComboBox1.ItemIndex of
      0:qrMain.SQL.Clear;
        qrMain.SQL.Text:= 'SELECT blabla1;';
        qrMain.Active:= True;
        qrMain.open;
        brake;
      1:qrMain.SQL.Clear;
        qrMain.SQL.Text:= 'SELECT blabla2;';
        qrMain.ParamByName('jahr').asString := Jahr;
        qrMain.Active:= True;
        qrMain.open;
Letzte Doofi-Frage für heute...

Liebe Grüße
Steffi
steffi
  Mit Zitat antworten Zitat
Benutzerbild von Die Muhkuh
Die Muhkuh

Registriert seit: 21. Aug 2003
7.332 Beiträge
 
Delphi 2009 Professional
 
#9

Re: Aktion entsprechend ComboBox...

  Alt 7. Dez 2007, 19:09
Hi Steffi,

nein, Du kannst natürlich auch mehr ausführen:

Delphi-Quellcode:
case ComboBox1.ItemIndex of
      0:
        begin
         { Dein Code } 
        end;
      1:
        begin
         { Dein Code } 
        end;
...
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.624 Beiträge
 
Delphi 12 Athens
 
#10

Re: Aktion entsprechend ComboBox...

  Alt 7. Dez 2007, 19:09
Delphi-Quellcode:
case ComboBox.ItemIndex of
  0: begin
       eineAktion;
       nochneAktion;
     end;
  1: begin
       eineAktion;
       nochneAktion;
     end;
  ...
end;
[edit] Die Kuh war schneller [/edit]
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  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 15:00 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