我已经将useSystemFont改为false了,还是不行?
请帮忙,谢谢!!

解决方案 »

  1.   

    比较笨的方法:
    Var 
        Lbl:TLabel;procedure TForm1.StatusBar1DrawPanel(StatusBar: TStatusBar;
      Panel: TStatusPanel; const Rect: TRect);
    begin  Lbl.Parent:=StatusBar1;
      Lbl.AutoSize:=False;
      Lbl.left:=Rect.Left;
      Lbl.Top:=Rect.Top;
      Lbl.Width:=Rect.Right-Rect.Left;
      Lbl.Height:=Rect.Bottom-Rect.Top;
      Lbl.Caption:='我';
      Lbl.Font.Color:=clRed;//  Lbl.Align:=alClient;
    end;procedure TForm1.FormCreate(Sender: TObject);
    begin
        StatusBar1.Panels[0].Style:=psOwnerDraw;
        Lbl:=TLabel.Create(self);
        Lbl.Visible:=True;end;
      

  2.   

    聪明的方法:
    procedure TForm1.StatusBar1DrawPanel(StatusBar: TStatusBar;
      Panel: TStatusPanel; const Rect: TRect);
    begin
      StatusBar1.Canvas.Font.Color:=clREd;
      StatusBar1.Canvas.TextRect(Rect,Rect.Left,Rect.Top,'我' );
    end;procedure TForm1.FormCreate(Sender: TObject);
    begin
        StatusBar1.Panels[0].Style:=psOwnerDraw;
    end;
      

  3.   

    用 OnDrawPanel 事件自己写吧
      

  4.   

    那Panels[1]和Panels[2]怎么写呢?