Bonjour à tous,

J'utilise cette procédure pour dessiner dans mon status Bar :

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
procedure TFPrincipal.StatusBar1DrawPanel(StatusBar: TStatusBar;
  Panel: TStatusPanel; const Rect: TRect);
begin

  With StatusBar1 do
  Begin
    if Panel.Index = 2 then
    Begin
//      Degrader(StatusBar1.Canvas,Rect,clbtnFace,$00E4E4E4);
      StatusBar1.Brush.Style := bsClear;
      StatusBar1.Font.Name := 'Tahoma';
      StatusBar1.Font.Size := 10;
      DrawText(Handle, PChar(StatusBar1.Panels[Panel.Index].Text), -1, Rect, DT_SINGLELINE);
    end;
  end;
end;
La ligne en rouge me génère cette erreur :
"Constant object cannot be passed as var parameter"
cette erreur ce situe au niveau de DT_SINGLELINE, mais je vois pas pourquoi.

Pouvez-vous m'éclairé ?


J'ai également un autre point, lorsque je resize ma Form commen peut-on garder la taille du StatusPanel[2] par exemple (le dernier à droite) toujours à la même taille ? C'est comme sur IE en bas à droit la taille de [Internet...] reste toujours la même ? comment fait-on ?

MErci à vous...