3 pièce(s) jointe(s)
Problème de style dans une TListBox
Bonjour à tous
Je souhaite customiser une TListBox pour afficher un carré de couleur suivit d'une chaine de caractère.
Pièce jointe 534365
Donc j'ai créé le style suivant:
Pièce jointe 534369
Le look que je veux
Pièce jointe 534373
La procédure de remplissage de ma liste est la suivante:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29
|
procedure TForm1.Button1Click(Sender: TObject);
var
i: integer;
item: TListBoxItem;
coul:TAlphaColor;
FMXObject: TFMXObject;
rect : TRectangle;
begin
lb.Clear;
for i := 1 to 5 do
begin
item := TListBoxItem.Create(nil);
item.Parent := lb;
item.StyleLookup:='elemstyle';
item.Text:=Format('Corps %d',[i]);
FMXObject := item.FindStyleResource('coul');
if (FMXObject <> nil) and (FMXObject is TRectangle) then
begin
rect := TRectangle(FMXObject);
rect.Fill.Color:=$FF000000+i*50*256+i*25;
end;
end;
end; |
Tout fonctionne bien j'affiche ma liste avec le rectangle de couleur qui va bien sauf que je ne peux pas sélectionner avec la souris un élément de ma liste.
Si dans mon code de remplissage je supprime la ligne
item.StyleLookup:='elemstyle';
Le comportement de ma liste redevient normal (mais je n'ai plus l'affichage que je désir)
Il semble donc que le problème se situe au niveau de mon style mais je ne vois pas où