Dans l'entrée du fichier d'aide pour TDBComboBox, il est indiqué que le texte de l'option sélectionnée devient la nouvelle valeur du champ. Existe-t-il un contrôle similaire qui va par ItemIndex au lieu de texte? (Pour représenter un type énuméré, par exemple.)Existe-t-il un équivalent TDBComboBox associé à ItemIndex?
2
A
Répondre
3
Essayez le TDBLookupComboBox. Découvrez les propriétés ListField, DataField et KeyField.
2
Vous pouvez remplir des éléments TDBComboBox avec des nombres ('0,' 1 ',' 2 ', ...), mais définir DBComboBox1.Style sur csOwnerDrawFixed et écrire l'événement OnItemDraw. Quelque chose comme ceci:
procedure TForm1.DBComboBox1DrawItem(Control: TWinControl; Index: Integer;
Rect: TRect; State: TOwnerDrawState);
begin
with (Sender as TDBComboBox).Canvas do
begin
FillRect(Rect);
TextRect(Rect, Rect.Left+1, Rect.Top+1, MyValueDescriptions[Index]);
end;
end;
Regardez [ici] (http://stackoverflow.com/a/24995039/2523663) pour un exemple. –