2 pièce(s) jointe(s)
ListBox et deux styles d'éléments (Item)
Bonjour,
Mettez ça sur le fait de mon nouvel état de retraité, à moins que ce soit un bogue de Delphi 12, je n'en suis pas sûr :weird:
je tente de faire une liste avec 2 styles donc un TListbox lié par livebindings et le code suivant
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
| procedure TFormStocks.LienLstCasiersFillingListItem(Sender: TObject;
const AEditor: IBindListEditorItem);
var aItem : TListBoxItem;
begin
AItem:=TListBoxItem(AEditor.CurrentObject);
case fdqCasierstypeitem.AsInteger of
1,2,3 : begin
aItem.StyleLookup := 'groupcasier';
// aItem.ApplyStyleLookup;
aItem.StylesData['btnremplir.tag']:=fdqCasiersTypeitem.AsInteger;
aItem.StylesData['btnremplir.onclick']:=TValue.From<TNotifyEvent>(remplirgroupe);
aItem.OnPainting:=ListBoxItem1Painting;
end;
else begin
aItem.StyleLookup := 'choixcasier';
// aItem.ApplyStyleLookup;
aItem.StylesData['capacite']:=Format('Capacité : %d',[fdqCasierscapacite.asInteger]);
aItem.StylesData['btnremplir.tag']:=fdqCasiersTypeitem.AsInteger;
aItem.StylesData['btnremplir.onclick']:=TValue.From<TNotifyEvent>(remplirgroupe);
aItem.OnPainting:=ListBoxItem1Painting;
end;
end;
end; |
cela semble fonctionner comme ci-dessous
Pièce jointe 649558
seulement si je défile dans la liste et que je reviens au début, j'obtiens
Pièce jointe 649559
Bref, je perds en partie mes styles :weird::weird::weird:
J'ai déjà été confronté à cette chose, mais je ne me souviens plus comment résoudre ça