AGB  ·  Datenschutz  ·  Impressum  







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

ComboBox - Items auswerten

Ein Thema von MarLe · begonnen am 6. Jul 2006 · letzter Beitrag vom 7. Jul 2006
Antwort Antwort
MarLe

Registriert seit: 13. Jan 2005
83 Beiträge
 
Delphi XE2 Professional
 
#1

ComboBox - Items auswerten

  Alt 6. Jul 2006, 15:58
Gibt es irgendeine Möglichkeit bei folgenden ComboBox Items

1 - erster Eintrag
3 - zweiter Eintrag
9 - dritter Eintrag

Bei der Auswahl eines Eintrages z.B. "3 - zweiter Eintrag"
die Zahl für einen Funktionsaufruf zu verwenden,
oder muss ich die Zahl aus dem String rausfischen???

(kann man eventuell den ItemIndex verwenden, aber wo/wie weise
ich diesen dem Eintrag zu?)
  Mit Zitat antworten Zitat
Benutzerbild von ste_ett
ste_ett

Registriert seit: 10. Sep 2004
Ort: Dülmen
464 Beiträge
 
Delphi 7 Professional
 
#2

Re: ComboBox - Items auswerten

  Alt 6. Jul 2006, 16:00
Per Copy() kannst du aus einem String einen Teilstring herausholen.
Mit StrToInt() kannst du dann eine Zahl daraus generieren.
Stefan
"Geht nicht!" ist keine Fehlerbeschreibung und "Hab ich schon versucht!" keine Antwort!

Hey, it compiles! Ship it!
  Mit Zitat antworten Zitat
Benutzerbild von Martin K
Martin K

Registriert seit: 20. Okt 2005
919 Beiträge
 
Turbo Delphi für Win32
 
#3

Re: ComboBox - Items auswerten

  Alt 6. Jul 2006, 16:05
Ehrlich gesagt, verstehe ich die Frage nicht so ganz.
Mit .Items[i] erhälst Du den String in Zeile i, wobei 0 die erste Zeile ist.
Mit ItemIndex erhältst Du die Zeilennummer der Zeile, die gerade ausgewählt ist (in der Box steht).

Wenn alle Zeilen als erstes eine Zahl haben, müsstest Du diese so erhalten:
StrToInt(ComboBox.Items[i][1])

[roter Kasten]
geht aber nur, wenn die Zahl aus nur einem Zeichen besteht ('0'..'9'), ansonsten musst Du mit Copy() bei 1 beginnen und gucken, wie viele Zeichen die Zahl breit ist...
[/roter Kasten]
Mit den Menschen ist es wie mit Computern -
es gibt Nullen und Einsen.
  Mit Zitat antworten Zitat
Christian Seehase
(Co-Admin)

Registriert seit: 29. Mai 2002
Ort: Hamburg
11.105 Beiträge
 
Delphi 11 Alexandria
 
#4

Re: ComboBox - Items auswerten

  Alt 6. Jul 2006, 16:56
Moin MarLe,

eine andere Variante:
Du hinterlegst die Werte, die Du brauchst als Objekt mit in der Item-Liste, also hinzufügen mit

ComboBox1.Items.AddObject(' 3 - zweiter Eintrag',TObject(3));
Tschüss Chris
Die drei Feinde des Programmierers: Sonne, Frischluft und dieses unerträgliche Gebrüll der Vögel.
Der Klügere gibt solange nach bis er der Dumme ist
  Mit Zitat antworten Zitat
Hawkeye219

Registriert seit: 18. Feb 2006
Ort: Stolberg
2.227 Beiträge
 
Delphi 2010 Professional
 
#5

Re: ComboBox - Items auswerten

  Alt 6. Jul 2006, 18:19
Hallo MarLe,

Christians Lösung ist die eleganteste, fallst du die Item-Liste zur Laufzeit füllst. Wenn die Einträge in der von dir vorgestellten Form bereits zur Designzeit vorliegen, kannst du mit der Prozedur Delphi-Referenz durchsuchenVal die Zahlen extrahieren:

Delphi-Quellcode:
procedure Test;
var
  s : string;
  Value : Cardinal;
  Code : Integer;
begin
  s := '1 - erster Eintrag';
  Val (s, Value, Code);
end;
Gruß Hawkeye
  Mit Zitat antworten Zitat
MarLe

Registriert seit: 13. Jan 2005
83 Beiträge
 
Delphi XE2 Professional
 
#6

Re: ComboBox - Items auswerten

  Alt 7. Jul 2006, 09:47
Danke für die Tipps.

Den Tipp mit TObject http://www.delphipraxis.net/internal...t=tobject+zahl
hatte ich auch schon gefunden.
Ich suchte eine Lösung die Einträge schon zur Designzeit festlegen zu können (da die Liste doch länger ist).
Ich denke ich verwende den Vorschlag von Hawkeye.
  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 19:46 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