Bonjour,
J'ai un TListView sur une form. Je dessine des carrés en couleur devant le caption. Jusque le pas de problème le caption et le carré sont ok.
Par contre tous les SubItems sont en caractères gras.
Voici le code que j'utilise:
Si je supprime du code :
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
17
18
19
20
21 void __fastcall TFrm_Task::ListView_EventCustomDrawSubItem( TCustomListView *Sender, TListItem *Item, int SubItem, TCustomDrawState State, bool &DefaultDraw) { ListView_Event->Canvas->Font->Style = TFontStyles(); ListView_Event->Canvas->Font->Size=8; TColor Color = 'ici ma couleur'; TRect Rect = pItem->DisplayRect(drIcon); Rect.left++; Rect.Right=19; Rect.Top++; Rect.Bottom--; ListView_Event->Canvas->Brush->Color = Color; ListView_Event->Canvas->FillRect(Rect); ListView_Event->Canvas->Brush->Color = clBlack; ListView_Event->Canvas->FrameRect(Rect); ListView_Event->Canvas->Brush->Color = clWhite; DefaultDraw=true; }
alors les subitems redeviennent normaux.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 ListView_Event->Canvas->FillRect(Rect); ou ListView_Event->Canvas->FrameRect(Rect);
J'ai même essayé de rajouter cette ligne de code, mais c'est idem.
Ma question : Pourquoi le FillRect et FrameRect change le style de ma font ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 ListView_Event->Canvas->Font->Style = TFontStyles();
Y-a-t-il une solution pour remettre le style de la font des subItems en Normal ?
Merci
Partager