Tekst w ComboBox jako Object itema

Odpowiedz Nowy wątek
Krzychu0000
2006-12-21 23:15
Krzychu0000
0

Witam, mam chyba banalny problem ale o tej porze mam jakąś zaćme. Otóż, do ComboBox dodaje item z objektem:

var
 s: string;
s := 'tekst w objekcie';
ComboBox1.Items.AddObject('jakis tekst', TObject(s)) ;

Jeżeli ktoś coś wybierze w rozwijanej liście Comboboxa to chce aby w ComboBox1.Text pojawił się tekst z objektu klikniętego itema a nie ten "widoczny" w liście (wg przykładu ma być "tekst w obiekcie" a nie "jakiś tekst"). Problem polega na tym, że wszystkie zdarzenia w event są wywoływane przed ostatecznym przypisaniem tekstu w ComboBox1.Text i ten mój z objektu i tak zostaje zastąpiony tym "widocznym". Ma ktoś jakiś pomysł jak to rozwiązać? Może coś z WinAPI?

P.S. Nie zależy mi koniecznie na ComboBoxie, to ma być komponent z rozwijaną listą w której klik na itemie będzie zwracał inną wartość niż widoczny Caption (czyli to co wsadzę do TObject). Wiem że mogę zastosować dynamiczną tablicę synchronizowaną z comboboxem na poziomie indexów lub po prostu do kliku buttona tworzyć dynamicznie listboxa, ale uparłem się na object :P

Pozostało 580 znaków

2006-12-21 23:24

Rejestracja: 16 lat temu

Ostatnio: 7 lat temu

0

zrób własne rysowanie textu w CB


- Ciemna druga strona jest.
- Nie marudź Yoda, tylko jedz tego tosta.
Google NIE GRYZIE!
Pomogłem - kliknij

Pozostało 580 znaków

Krzychu0000
2006-12-21 23:31
Krzychu0000
0

Też tak myślałem ale ten wyswietlony tekst w combo bede później wykorzystywal przez inne komponenty

Pozostało 580 znaków

2006-12-21 23:52

Rejestracja: 16 lat temu

Ostatnio: 7 lat temu

0

no i w czym problem?


- Ciemna druga strona jest.
- Nie marudź Yoda, tylko jedz tego tosta.
Google NIE GRYZIE!
Pomogłem - kliknij

Pozostało 580 znaków

Krzychu0000
2006-12-22 08:29
Krzychu0000
0

No tak ale w jakiej metodzie to rysować jak wszystkie są wywoływane szybciej niż końcowe przypisanie tekstu przez sam komponent i zostanie "nadrysowane"? Po za tym combobox bedzie typu "normal" czyli z polem edit i tekst w nim musi sie znajdować fizycznie aby użytkownik mógł go edytować.

Pozostało 580 znaków

Odpowiedz

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0