Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Delphi combobox items aktualisieren/hinzufügen geht nicht (https://www.delphipraxis.net/132219-combobox-items-aktualisieren-hinzufuegen-geht-nicht.html)

matashen 8. Apr 2009 07:20


combobox items aktualisieren/hinzufügen geht nicht
 
Hallöchen,

steh jetzt irgendwie vorm Wald und seh den Baum nicht.

Möchte wenn in einer Combobox was eingetragen wird den Eintrag in die itemliste eintragen und dem eintrag den index dazu übergeben. Nachdem ich das für mehrere Boxen brauche hab ichs allgemein geschrieben und in onkeypress eingtragen

Delphi-Quellcode:
if key=#13 then
            TCombobox(sender).itemindex:=TCombobox(sender).items.add(TCombobox(sender).text);
so und warum geht das nicht??? Bzw. Wo ist da mein Denkfehler???


Gruß Matthias

oldmax 8. Apr 2009 08:20

Re: combobox items aktualisieren/hinzufügen geht nicht
 
Hi
Ich hab zwar nicht wirklich verstanden, was du ItemIndex übergeben willst, aber ein Eintrag in eine Combobox sollte folgendermaßen gehen:

Delphi-Quellcode:
if key=#13 then
Begin
  if (Sender is TCombobox) then
  begin
    (Sender as TCombobox).Add((Sender as TCombobox).Text); /7 Text in Liste eintragen
    (Sender as TCombobox).ItemIndex:=(Sender as TCombobox).IndexOf((Sender as TCombobox).Text); // ItemIndex setzen
  end;
end;
Geht aber bestimmt noch viel einfacher.....


edit: Nachtrag
Um doppelte Einträge zu vermeiden, solltest du über IndexOf erst abfragen, ob der Eintrag schon vorhanden ist. Nur bei kleiner 0 ( muß ich ausschreiben, da meine Tastatur dieses Zeichen nicht zuläßt ??) ist dieser Eintrag noch nicht vorhanden und kann über Add hinzugefügt werden.
Gruß oldmax

TheFrog 8. Apr 2009 08:28

Re: combobox items aktualisieren/hinzufügen geht nicht
 
Morgen Mathias,

was geht den nicht, ich habe deinen Code ausprobiert und er macht eigentlich genau das, was Du beschrieben hast.

Welche Eigenschaft hast Du bei TComboBox.Style gesetzt, diese sollte auf csDropDown stehen.

Gruß, Hans.

matashen 8. Apr 2009 08:30

Re: combobox items aktualisieren/hinzufügen geht nicht
 
ach "sender as" wars .... aber zu früh gefreut - war da meine Lösung etwa doch richtig. Ich bekomm imme rnoch keinen Eintrag in die Box

Und ja style ist richtig gesetzt

TheFrog 8. Apr 2009 09:21

Re: combobox items aktualisieren/hinzufügen geht nicht
 
Ich traue mich kaum zu fragen, aber wird das OnKeyPress-Event auch angesprungen, d.h. ist dieses bei der ComboBox eingetragen? Setz doch mal einen Breakpoint in der Methode oder gib ein Showmessage aus.

Ich habe Dein Beispiel genauso bei mir eingegeben und es funktioniert wie beschrieben:
es wird der aktuelle Text aus der ComboBox den Items hinzugefügt. Bei mehrfachem Betätigen der Enter-Taste wird der gleiche Text natürlich ohne Prüfung mehrfach aufgenommen.

Hans.

matashen 8. Apr 2009 10:01

Re: combobox items aktualisieren/hinzufügen geht nicht
 
ja ist eingetragen und wird angesprungen. Kann aber keinen Wert rausziehen da ich die Meldung bekomme.
"Aus peromancegründen kann aktueller Wert von Sender nicht ermittelt werdeN" oder so änlich.

Ich guck nochmal alles durch... evtl liegt ja der Hund wo anders begraben.

Danke schonmal ich meld mich nochma

Gruß Matthias

matashen 8. Apr 2009 10:09

Re: combobox items aktualisieren/hinzufügen geht nicht
 
und schon gefunden...

...hab die Liste an falscher stelle neu gefüttert und somit zurück gesetzt.

Ach das istnicht mein Tag.

Danke an alle

Gruß Matthias


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