AGB  ·  Datenschutz  ·  Impressum  







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

TComboBoxEx.ItemIndex

Ein Thema von PeterPanino · begonnen am 13. Jun 2023 · letzter Beitrag vom 13. Jan 2025
Antwort Antwort
PeterPanino

Registriert seit: 4. Sep 2004
1.465 Beiträge
 
Delphi 10.4 Sydney
 
#1

TComboBoxEx.ItemIndex

  Alt 13. Jun 2023, 07:42
TComboBoxEx ist so etwas wie ein erweitertes TComboBox Steuerelement und ermöglicht die Verwendung von Item Images. Seine Eigenschaft ItemIndex ist public (nicht published!) und gibt Auskunft darüber, welches Item gerade ausgewählt ist (ItemIndex: Integer).

So weit so gut. Leider funktioniert das nicht in der umgekehrten Richtung: Das heißt, ComboBoxEx1.ItemIndex := 3 bewirkt NICHT die Auswahl des 4. Elements der Liste, sondern gar nichts.

Wie kann man also über einen Integer-Wert die Auswahl eines Items von TComboBoxEx steuern?
Geändert von PeterPanino, damit der Platz auf dem Bildschirm nicht so leer aussieht.
  Mit Zitat antworten Zitat
itsChris

Registriert seit: 29. Jul 2022
26 Beiträge
 
Delphi 12 Athens
 
#2

AW: TComboBoxEx.ItemIndex

  Alt 13. Jun 2023, 09:01
Also bei mir funktioniert das Setzen des ItemIndex problemlos und bewirkt auch eine Änderung.

Wenn aber der Index außerhalb des Bereichs ist, dann wird der vorher gesetzte/ausgewählte Index beibehalten.

Geändert von itsChris (13. Jun 2023 um 09:08 Uhr)
  Mit Zitat antworten Zitat
PeterPanino

Registriert seit: 4. Sep 2004
1.465 Beiträge
 
Delphi 10.4 Sydney
 
#3

AW: TComboBoxEx.ItemIndex

  Alt 13. Jun 2023, 09:17
Du hast recht. Das Setzen von ItemIndex funktioniert. Mir ist ein Fehler unterlaufen.
Geändert von PeterPanino, damit der Platz auf dem Bildschirm nicht so leer aussieht.

Geändert von PeterPanino (13. Jun 2023 um 09:27 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von anse
anse

Registriert seit: 30. Okt 2006
Ort: Neuenkirchen
198 Beiträge
 
Delphi 11 Alexandria
 
#4

AW: TComboBoxEx.ItemIndex

  Alt 13. Jan 2025, 08:36
Passt nicht direkt zum Thema, aber verwandt: das Auslesen von TComboBoxEx.ItemIndex dauert ca. 3x so lang wie dasselbe bei der guten alten TComboBox.

Das hat bei mir in einer sehr langen Schleife ein Performance-Problem ausgelöst, was ich dann durch eine lokale Variable gelöst habe.

Delphi-Quellcode:
idx := comboEx.ItemIndex;
for i:=0 to 1000000 do begin
  // case comboEx.ItemIndex of // slow!
  // 0: ...
  // 1: ...
  // end;
end;
Ansgar Becker
https://www.heidisql.com
Wenn du loslässt, hast du zwei Hände frei.
  Mit Zitat antworten Zitat
Redeemer

Registriert seit: 19. Jan 2009
Ort: Kirchlinteln (LK Verden)
1.103 Beiträge
 
Delphi 2009 Professional
 
#5

AW: TComboBoxEx.ItemIndex

  Alt 13. Jan 2025, 12:06
Dann mach ich auch noch eine Anmerkung: Das Löschen des ausgewählten Eintrags aus der TComboBoxEx zeichnet sie ab Windows 10 bei csExDropDownList nicht neu. Das schließt das Leeren der Einträge ein. Da danach trotzdem der ItemIndex auf -1 steht, funktioniert auch das Setzen nicht, da Delphi denkt, es wäre bereits nichts ausgewählt. Daher immer den ItemIndex auf -1 setzen, bevor man das ausgewählte Element löscht.
Janni
2005 PE, 2009 PA, XE2 PA
  Mit Zitat antworten Zitat
Antwort Antwort

 

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 12:39 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz