![]() |
Delphi-Version: 5
Werte in Combobox einfügen klappt so nicht
Hallo zusammen,
ich habe eine Combobox mit diversen Items als Vorgabe. Nun möchte ich per Zuweisung als Beispiel
Delphi-Quellcode:
einfügen.
Combobox3.Text:= '37';
37 ist aber nicht in der Itemliste. Das funktioniert aber leider nur wenn der Style auf csDropDown gesetzt ist. Ich brauche aber als Style csdropdownList, damit sich auf dem Touchscreen per "FingerKlick" ins Feld die Liste öffnet. Gibts dazu ne Alternative? Ich danke euch |
AW: Werte in Combobox einfügen klappt so nicht
Delphi-Quellcode:
Combobox3.Items.Add('37');
|
AW: Werte in Combobox einfügen klappt so nicht
Zitat:
|
AW: Werte in Combobox einfügen klappt so nicht
Delphi-Quellcode:
ComboBox3.Items.Add('37');
ComboBox3.ItemIndex := Combobox3.Items.Count-1; |
AW: Werte in Combobox einfügen klappt so nicht
Zitat:
Wie DeddyH schon schrieb, weist man eine Stringliste einen neuen Wert mittels Add oder Append zu. ![]() ![]() ![]() Zitat:
|
AW: Werte in Combobox einfügen klappt so nicht
Delphi-Quellcode:
oder
Combobox3.Items.Add('37');
ComboBox3.ItemIndex := Combobox3.Items.IndexOf('37');
Delphi-Quellcode:
oder
with Combobox3 do
begin Items.Clear; Items.Add('37'); ItemIndex := Items.IndexOf('37'); //ItemIndex := Items.IndexOf(Trim(Items.Text)); end;
Delphi-Quellcode:
with Combobox3 do
begin Items.Clear; ItemIndex := Items.Add('37'); end; |
AW: Werte in Combobox einfügen klappt so nicht
Zitat:
Delphi-Quellcode:
s := '37';
ComboBox3.Items.Add(s); ComboBox3.ItemIndex := Combobox3.Items.IndexOf(s); |
AW: Werte in Combobox einfügen klappt so nicht
Was spricht eigentlich dagegen, den von Add zurückgelieferten Wert gleich als ItemIndex zu setzen?
Delphi-Quellcode:
Liste.ItemIndex := Liste.Add('Neues Item');
|
AW: Werte in Combobox einfügen klappt so nicht
Nix, hab ich nur nicht dran gedacht :)
|
AW: Werte in Combobox einfügen klappt so nicht
>> Irritierend ist, daß du erst schreibst, '37' sei nicht in er Itemliste, "es" dann aber dennoch funktionieren sollte.
war vielleicht etwas schlecht ausgedrückt :-( Soll heissen es muss auch ein Wert zu übergeben sein, der nicht in der Itemliste steht. |
AW: Werte in Combobox einfügen klappt so nicht
:wiejetzt: ... der Itemliste einen Wert übergeben, der noch nicht darin enthalten ist?
Wer soll wem einen Wert übergeben? |
AW: Werte in Combobox einfügen klappt so nicht
ok, ich danke euch
funktioniert! |
AW: Werte in Combobox einfügen klappt so nicht
Zitat:
Hab ich mich sooo unverständlich ausgedrückt? |
AW: Werte in Combobox einfügen klappt so nicht
Verstehe ich das jetzt richtig? Du willst in der ComboBox den Style csDropDownList, weil du dann einfach auf das Feld klicken kannst (statt nur auf den Button rechts neben dem Feld), auf der anderen Seite aber willst du die Funktion Text aus dem Style csDropDown, wo du einen Text eingeben kannst, ohne dass es in der Liste ist und auch nicht dort aufgenommen wird?
Damit klappt die ComboBox im Style csDropDown die Liste auf wenn man sie wechselt.
Delphi-Quellcode:
procedure TForm1.ComboBox1Enter(Sender: TObject);
begin with TComboBox(Sender) do begin Perform(CB_SHOWDROPDOWN, Integer(True), 0); // Integer(False) für zu SetFocus; end; end; |
AW: Werte in Combobox einfügen klappt so nicht
Zitat:
|
AW: Werte in Combobox einfügen klappt so nicht
Zitat:
|
AW: Werte in Combobox einfügen klappt so nicht
Was funktioniert nicht? Es tut sein Dienst. Was speziell entspricht nicht den Vorstellungen?
Es ist nun mal so, dass man entweder eine Liste hat die nicht verändert werden soll oder eine Liste die man durch Texteingabe ergänzen kann. |
AW: Werte in Combobox einfügen klappt so nicht
die Liste geht nicht auf
|
AW: Werte in Combobox einfügen klappt so nicht
Hast du sie auch richtig platziert in ComboBoxEnter? Sie müsste jedes Mal aufgehen wenn die ComboBox den Fokus neu bekommt.
|
AW: Werte in Combobox einfügen klappt so nicht
Zitat:
|
AW: Werte in Combobox einfügen klappt so nicht
Zitat:
|
AW: Werte in Combobox einfügen klappt so nicht
vielleicht liegt es am Lazarus :-(
|
AW: Werte in Combobox einfügen klappt so nicht
Zitat:
Vielleicht geht es ja auf, aber irgendwas macht es wieder zu?
Delphi-Quellcode:
oder
with TComboBox(Sender) do
begin SetFocus; Perform(CB_SHOWDROPDOWN, WParam(True), 0); // WParam(False) für zu end;
Delphi-Quellcode:
uvm.
with TComboBox(Sender) do
begin SetFocus; Application.ProcessMessages; Perform(CB_SHOWDROPDOWN, WParam(True), 0); // WParam(False) für zu end; PS: Zitat:
|
AW: Werte in Combobox einfügen klappt so nicht
Eigentlich reden wir vom Style csDropDown, müsste also klappen. In Delphi. Und wie gesagt, den Code oben habe ich getestet.
Aber wo wir schon beim Thema sind, wobei das Problem ich aber bei mir sehe, denn in den Eigenschften des TE steht ja, dass mit Lazarus programmiert wird, aber es wäre dennoch nicht falsch den Hinweis auch so mal fallen zu lassen. Für die Unaufmerksamen wie mich. |
AW: Werte in Combobox einfügen klappt so nicht
Wenn Lazarus nichts eigenes gebastelt hat und es sich um das native Windows Steuerelement handelt, wüsste ich nicht, was Lazaurs damit zu tun haben sollte.
|
AW: Werte in Combobox einfügen klappt so nicht
Zitat:
Aber es liegt auch an Dir, dass Du keine Lösung gefunden hast. Stichwort: mangelnde Grundlagen Wenn .Perform() nicht funktioniert, dann nimmt man halt SendMessage und schon funktioniert das automatische Aufklappen der Box auch unter Lazarus:
Delphi-Quellcode:
procedure TForm1.ComboBox1Enter(Sender: TObject);
begin SendMessage(TComboBox(Sender).Handle, CB_SHOWDROPDOWN, 1, 0); end; |
AW: Werte in Combobox einfügen klappt so nicht
Zitat:
mit
Delphi-Quellcode:
und style csdropdownLIST habe ich die gewünschten Funktionen und Eigenschaften.
Liste.ItemIndex := Liste.Add('Neues Item');
Warum also sonstwie verkünsteln? ;-) |
AW: Werte in Combobox einfügen klappt so nicht
Zitat:
#15: Zitat:
Zitat:
Dass Du nun auf die Möglichkeit der Eingabe in die Property Text der ComboBox verzichten möchtest, dass hast Du uns leider nicht mitgeteilt. |
AW: Werte in Combobox einfügen klappt so nicht
Zitat:
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 07:20 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-2025 by Thomas Breitkreuz