Bonjour,
J'utilise un ListBoxDrawItem pour une ListBox donc, et ce dernier ne fonctionne pas, alors que j'utilise dans un autre projet et il fonctionne sans aucun problème.
Voici le code :
Je tiens à préciser que ce code est utilisé dans un TcxGrid il s'ouvre automatiquement lorsque l'on commence à taper du texte dans une colonne.
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
22
23
24
25
26
27
28 procedure TformAna.ListBoxDrawItem(Control: TWinControl; Index: Integer; Rect: TRect; State: TOwnerDrawState); begin with ListBox do with Canvas do begin // on dessine le fond des lignes en alternant les couleurs if Index mod 2 <> 1 then Brush.Color := clwhite else Brush.Color := $00F8D1C5; FillRect(Rect); // affichage lorsque la ligne est sélectionnée if (odFocused in State) then begin Brush.Color := $00F8D1C5; FillRect(Rect); Font.Color := clBlue; Font.Style := Font.Style + [fsBold]; end else begin Font.Color := clblack; end; DrawText(Canvas.Handle, PChar(Items[Index]), -1, Rect, DT_VCENTER Or DT_SINGLELINE Or DT_LEFT); end; end;
De plus cet ensemble ce situe dans une form qui s'ouvre en popup lors du changement de données (DataChang) d'une autre Grid.
Enfin le code du MeasureItem de la ListBox ne fonctionne pas non plus alors que le ListBoxKeyDown fonctionne.
Dernière information : Je sais pas si c'est en rapport avec ce problème là, mais j'ai un mainmenu au sein de ma form qui n'apparaît pas quand le programme est lancé, curieux...
Merci d'avance
Partager