Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Multimedia (https://www.delphipraxis.net/16-multimedia/)
-   -   Delphi Gewähltes Genre (Index-Nummer) in Label anzeigen (https://www.delphipraxis.net/153234-gewaehltes-genre-index-nummer-label-anzeigen.html)

mlspider 26. Jul 2010 09:19

Gewähltes Genre (Index-Nummer) in Label anzeigen
 
Moin,

habe ein Verständnisproblem. Ich habe in einer ComboBox ID3 Genres gelistet. Mein vorhaben ist es, das zur Entwurfszeit festgelegte Genre (Index-Nummer) an ein Label zu übergeben.

Folgendes Ereignis in FormShow:

Delphi-Quellcode:
Label33.Caption:=IntToStr(ComboBox1.ItemIndex);
funktioniert nicht und gibt mir -1 zurück.

Lege ich es in das onChange Ereignis von ComboBox1, klappt es.

Wo könnte man ansetzen?

himitsu 26. Jul 2010 09:21

AW: Gewähltes Genre (Index-Nummer) in Label anzeigen
 
ComboBox.ItemIndex gibt nur den Index eines "direkt" gewählten eintrages aus der integrierten "Listbox".

Wird Text über das "Edit" eingegeben, dann ist natürlich kein Eintrag der "ListBox" ausgewählt, also ComboBox1.ItemIndex ist dann -1.

Mit ComboBox1.Text kommst du an den Text des "Edits".

mkinzler 26. Jul 2010 09:22

AW: Gewähltes Genre (Index-Nummer) in Label anzeigen
 
Ein ItemIndex von -1 bedeutet, dass nichts ausgewählt ist. Dies würde ich abfangen

Delphi-Quellcode:
if ComboBox1.ItemIndex > -1 then
    Label33.Caption:=IntToStr(ComboBox1.ItemIndex);

DeddyH 26. Jul 2010 09:23

AW: Gewähltes Genre (Index-Nummer) in Label anzeigen
 
Oder man versucht es mit
Delphi-Quellcode:
ComboBox.Items.IndexOf(ComboBox.Text)

mkinzler 26. Jul 2010 09:24

AW: Gewähltes Genre (Index-Nummer) in Label anzeigen
 
Dann bekommt man auch -1, wenn nichts ausgewählt ist.

himitsu 26. Jul 2010 09:25

AW: Gewähltes Genre (Index-Nummer) in Label anzeigen
 
Zitat:

Zitat von mkinzler (Beitrag 1037571)
Delphi-Quellcode:
if ComboBox1.ItemIndex <-1 then
    Label33.Caption:=IntToStr(ComboBox1.ItemIndex);

du meinst bestimmt
Delphi-Quellcode:
>= 0
?
(kleiner als -1 wird es wohl niemals werden :stupid: )
Delphi-Quellcode:
if ComboBox1.ItemIndex >= 0 then
    Label33.Caption := IntToStr(ComboBox1.ItemIndex)
else
    Label33.Caption := 'nichts ausgewählt';

mkinzler 26. Jul 2010 09:25

AW: Gewähltes Genre (Index-Nummer) in Label anzeigen
 
Ja habe die falsche Taste erwischt. Muss natürlich > -1 heissen

mlspider 26. Jul 2010 09:32

AW: Gewähltes Genre (Index-Nummer) in Label anzeigen
 
Upps, DeddyH hat ja recht. Wozu gibt es IndexOf... Danke.

himitsu 26. Jul 2010 09:51

AW: Gewähltes Genre (Index-Nummer) in Label anzeigen
 
Zitat:

Zitat von mlspider (Beitrag 1037577)
Upps, DeddyH hat ja recht. Wozu gibt es IndexOf... Danke.

Wenn du unbedingt einen Index brauchst, warum ist dann die ComboBox so eingestellt, daß kein Index pflicht ist?
z.B. .Style = csDropDownList


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