Announcement

Collapse
No announcement yet.

Leeren einer TComboBoxEx

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Leeren einer TComboBoxEx

    Hallo an alle,

    ich verwende eine TComboBoxEx, da ich eine (einfache) Auswahlliste benötige, in der neben einer Beschreibung auch ein void*-Pointer auf eine eigene Struktur hinterlegt sein soll, da ich bei Auswahl eines Eintrags schnell darauf zugreifen will und der Index des Eintrags keine Rückschlüsse auf das zugrunde liegende Objekt liefert. Von einer Verwendung einer anderen Komponente (z.B. TStringTree o.ä.) wollte ich aus Platzgründen und zugunsten einer einfachen Implementierung Abstand nehmen.

    Nun möchte ich den Inhalt der TComboBoxEx aktualisieren. Dazu will ich natürlich erst den alten Inhalt entfernen, was ich mit ComboBoxEx->Clear(); machen möchte, bevor ich mit ComboBoxEx->ItemsEx->Add(); wieder neue Einträge hinzufüge.

    Leider stürzt mein Prog beim Aufruf von ComboBoxEx->Clear(); mit der Exception "Systemfehler. Code: 5. Zugriff verweigert" ab.

    Falls ich stattdessen ComboBoxEx->Itemsex->Clear(); aufrufe, friert meine App einfach mit nahezu 100% CPU-Auslastung ein. Das gleiche Phänomen tritt ein, wenn ich

    Code:
    try {ComboBoxEx->Clear();} __except (true) {};
    verwende.

    Versucht die Clear()-Methode etwa, auch das im Data hinterlegte Objekt zu löschen (was sie in meinem Fall nicht darf!)?
    Falls ja, gibt ein eine Leeren-Methode, die das nicht tut?
    Falls nein, wo könnte die Exception sonst herkommen?

    Oder liegt der Fehler definitiv ganz woanders (also bei mir)?

    Gruß, Sören

  • #2
    Versucht die Clear()-Methode etwa, auch das im Data hinterlegte Objekt zu löschen
    Sollte aus der Hilfe hervorgehen...

    Ggf. nutze als Ersatz eine TStringList und weise die Items einer "normalen" Combobox zu. Habe das Ding nur einaml genutzt, konnte dein Verhalten nicht beobachten
    Christian

    Comment

    Working...
    X