| Autor |
Beitrag |
Timm3r
Hält's aus hier
Beiträge: 11
|
Verfasst: Di 14.09.10 17:01
Hallo nochmal zusammen,
schon wieder ergibt sich ein Problem mit Delphi. Gestern erst wurde mir wunderbar geholfen und deshalb wende ich mich nochmal an euch. Ich möchte über eine Combobox, in der Rot, Rotgelb, Grün und Gelb stehen soll, verschiedne Bilder von Ampeln aufrufen. Was muss ich jetzt im Quelltext dieser Combobox eingeben?
Wäre echt super, wenn ihr mir das erklären könntet!
Grüße! Moderiert von Gausi: Topic aus Delphi Language (Object-Pascal) / CLX verschoben am Di 14.09.2010 um 17:24
|
|
Dude566
      
Beiträge: 1592
Erhaltene Danke: 79
W8, W7 (Chrome, FF, IE)
Delphi XE2 Pro, Eclipse Juno, VS2012
|
Verfasst: Di 14.09.10 17:18
Zunächst musst du wissen womit die Bilder dargestellt werden sollen, schau dir mal TImage an.
_________________ Es gibt 10 Gruppen von Menschen: diejenigen, die das Binärsystem verstehen, und die anderen.
|
|
Timm3r 
Hält's aus hier
Beiträge: 11
|
Verfasst: Di 14.09.10 18:06
Nein die Bilder darstellen, das ist ja einfach. Ich möchte nur für eine Auswahl in dieser Kombobox ein gewisses Verhalten programmieren, sodass das Bild bei Grün die grüne Ampel ist. ich weiß ImAmpelRot.visible:=false ImAmpelGruen.visible:= true aber wie trage ich überhaupt was in die Box ein?
|
|
Luckie
Ehemaliges Mitglied
Erhaltene Danke: 1
|
Verfasst: Di 14.09.10 18:25
Wenn es nicht zur Laufzeit sein muss über den Objektinspektor. Die passende Eigenschaft solltest du selber finden. Und bei ändern der Auswahl wird das Ereignis OnChange ausgelöst.
|
|
platzwart
      
Beiträge: 1054
Erhaltene Danke: 78
Win 7, Ubuntu 9.10
Delphi 2007 Pro, C++, Qt
|
Verfasst: Di 14.09.10 18:43
Inhalt der Combobox: Items
Beim Ändern des ausgewählten Eintrags wird das OnChange-Ereignis ausgelöst. Dort kannst du wieder case benutzen...
Delphi-Quelltext 1: 2: 3: 4: 5: 6:
| Case ComboBox.ItemIndex of 0: begin foo; end; end; |
_________________ Wissenschaft schafft Wissenschaft, denn Wissenschaft ist Wissenschaft, die mit Wissen und Schaffen Wissen schafft. (myself)
|
|
Timm3r 
Hält's aus hier
Beiträge: 11
|
Verfasst: Di 14.09.10 19:02
Ja danke erst einmal für die zahlreichen Antworten.
Mein Quelltext ist jetzt dieser:
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: 22: 23: 24: 25: 26: 27: 28: 29: 30: 31: 32: 33:
| procedure TForm1.BoxChange(Sender: TObject); begin
Case Box.ItemIndex of 0: begin ImAmpelRot.visible:=true; ImAmpelGruen.visible:=false; ImAmpelRotGelb.Visible:=false; ImAmpelGelb.visible:=false; end; 1: begin ImAmpelRot.visible:=false; ImAmpelGruen.visible:=false; ImAmpelRotGelb.Visible:=true; ImAmpelGelb.visible:=false; end; 2: begin ImAmpelRot.visible:=false; ImAmpelGruen.visible:=true; ImAmpelRotGelb.Visible:=false; ImAmpelGelb.visible:=false; end; 3: begin ImAmpelRot.visible:=false; ImAmpelGruen.visible:=false; ImAmpelRotGelb.Visible:=false; ImAmpelGelb.visible:=true; end;
end;
end; end. |
Nur woher weiß jetzt diese Combobox welche Zahl nun gegeben ist und wie schreibe ich eine Auswahlliste für diese Combobox?
Danke im Voraus!
Moderiert von Narses: Code- durch Delphi-Tags ersetzt
|
|
platzwart
      
Beiträge: 1054
Erhaltene Danke: 78
Win 7, Ubuntu 9.10
Delphi 2007 Pro, C++, Qt
|
Verfasst: Di 14.09.10 19:13
Die Auswahl steckt in ItemIndex. Und in die Eigenschaft Items musst du die Einträge einfügen (am besten direkt im Objektinspektor)...
_________________ Wissenschaft schafft Wissenschaft, denn Wissenschaft ist Wissenschaft, die mit Wissen und Schaffen Wissen schafft. (myself)
|
|
dickeWade
Hält's aus hier
Beiträge: 14
Erhaltene Danke: 1
Win95, Vista
Delphi 3, Delphi 7
|
Verfasst: Sa 05.03.11 18:10
Das geht aba etwas eleganter
Delphi-Quelltext 1: 2: 3: 4: 5: 6: 7:
| procedure TForm1.BoxChange(Sender: TObject); begin ImAmpelRot.visible := (Box.ItemIndex = 0); ImAmpelRotGelb.Visible := (Box.ItemIndex = 1); ImAmpelGruen.visible := (Box.ItemIndex = 2); ImAmpelGelb.visible := (Box.ItemIndex = 3); end; |
Gruß Tommi
Für diesen Beitrag haben gedankt: KleinesPferd
|
|