Komponent ComboBox

0

Witam!
Mam następujący problem. Programuję w Delphi i chcę użyć komponentu ComboBox w ten sposób, że po kliknięciu danej pozycji z listy rozwijanej, w okienku tekstowym komponentu ma się pojawić jedynie fragment (np. pierwsze 3 znaki) łańcucha wybranego na liście rozwijanej, a nie cały łańcuch wybrany z listy. Próbowałem to robić np. zdarzeniem onSelect, ale mimo, że w tym zdarzeniu ustalam wartość pola Text na wymaganą przeze mnie, to i tak po kliknięciu, pojawia się w tym polu jedynie tekst wybrany z listy rozwijanej, a nie to co wpisuję w obsłudze zdarzenia onSelect. Tak jakby to co było przeze mnie na sztywno wpisane, zostało następnie nadpisane przez jakieś wewnętrzne procedury obsługujące zdarzenie onSelect. Czy zna ktoś rozwiązanie tego problemu i zechce się nim podzielić? Jak spowodować, aby komponent ComboBox "słuchał" co mu chcę wpisać w pole Text.

0

Spróbuj dodać Timer i w zdarzeniu OnTimer umieścić procedurę:

combobox1.Text:=LeftStr(combobox1.Items[combobox1.ItemIndex],3);
0

@memex daj kod

0

procedure TOkno.liniadSelect(Sender: TObject);
var s,sp:String;
begin
s:=liniad.Text;
sp:=copy(s,1,3);
liniad.Text:=sp;
end;

"liniad" to nazwa komponentu ComboBox.
Nie ma znaczenia, co podstawiam w powyższej procedurze pod wartość pola "liniad.Text" - i tak zawsze wyświetli się tylko i wyłącznie wartość wybrana z listy.
Zaznaczam, że kombinowałem już z wszelkimi możliwymi wartościami parametru "Style".

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