Bonsoir,
Une petite question qui devrait sembler toute bête...
J'ai 5 TMenuItems dans un TPopupMenu, avec la propriété OwnerDraw a true.
Donc dans l'évènement OnAdvancedDrawItem, j'appelle une fonction commune a tous les items :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
 
void __fastcall TfrmPrincipale::ComunMenuItemDraw(TObject *Sender, TCanvas *ACanvas, TRect &ARect, TOwnerDrawState State)
{
ACanvas->FillRect(ARect);
if (State.Contains(odSelected))
{
ACanvas->Font->Color = clRed;
ACanvas->Font->Style = TFontStyles()<< fsBold;
}
else
{
ACanvas->Font->Color = clNavy;
ACanvas->Font->Style = TFontStyles();
}
ACanvas->TextRect(ARect, 2, 2, ((TMenuItem *)Sender)->Caption );
}
avec :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
 
ComunMenuItemDraw(Sender, ACanvas, ARect, State);
Problème : seul le premier élément est dessiné...
Ca doit être idiot mais, je n'arrive pas a voir ce que je ne fais pas pour que cela fonctionne en totalité...

Merci d'avance,

@+