Вниз
Скачать: CL | DM;

Как вставить в одну из панелей статус бара прогрес бар?   Найти похожие ветки 

 
vov   (2004-11-12 09:30) [0]

Вопрос в теме.


 
stone ©   (2004-11-12 09:42) [1]

ProgressBar.Parent := StatusBar;
также указать Left, Top и другие необходимые параметры


 
GLFox   (2004-11-12 09:56) [2]

Можно глянуть здесь:
http://www.delphiplus.org/articles/components/statusbar/index.html


 
grom   (2004-11-12 20:31) [3]

unit Main;

interface

uses
 Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
 ExtCtrls, ComCtrls, StdCtrls;

type
 TForm1 = class(TForm)
   Button1: TButton;
   Button2: TButton;
   Button3: TButton;
   StatusBar1: TStatusBar;
   Timer1: TTimer;
   procedure StatusBar1DrawPanel(StatusBar: TStatusBar;
     Panel: TStatusPanel; const Rect: TRect);
   procedure Button1Click(Sender: TObject);
   procedure Button3Click(Sender: TObject);
   procedure Button2Click(Sender: TObject);
   procedure Timer1Timer(Sender: TObject);
 private
   { Private declarations }
  Percent: Integer;
 public
   { Public declarations }
 end;

var
 Form1: TForm1;

implementation

{$R *.DFM}

procedure TForm1.StatusBar1DrawPanel(StatusBar: TStatusBar;
 Panel: TStatusPanel; const Rect: TRect);
var s: String;
   TH: Integer;
   Rec: TRect;
   X: Integer;
   Y: Integer;
begin
 S := Format("%u%%",[Percent]);
 TH := (Rect.Right - Rect.Left) * Percent div 100;
 X := ((Rect.Right - Rect.Left) + StatusBar.Canvas.Font.Height * Length(s)) div 2;
 Y := ((Rect.Bottom - Rect.Top)-(StatusBar.Canvas.Font.size div 2))  div 2 ;

 StatusBar1.Canvas.Brush.Color := clWhite;
 Rec := Classes.Rect(Th,Rect.Top,Rect.Right,Rect.Bottom);
 StatusBar.Canvas.TextRect(Rec,x,y,s);
 {рисование не заполненной чести линейки}
 StatusBar.Canvas.Font.Color := StatusBar.Canvas.Brush.Color;
 StatusBar.Canvas.Brush.Color :=  clNavy;
 Rec := Classes.Rect(Rect.Left,Rect.Top,TH,Rect.Bottom);
 StatusBar.Canvas.TextRect(Rec,x,y,S);
 {рисование заполненной чести линейки}
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
Timer1.Enabled := True;
end;

procedure TForm1.Button3Click(Sender: TObject);
begin
if Timer1.Enabled then
 Timer1.Enabled := not Timer1.Enabled;
Percent := 0;
StatusBar1.Invalidate;
end;

procedure TForm1.Button2Click(Sender: TObject);
begin
Timer1.Enabled := False;
end;

procedure TForm1.Timer1Timer(Sender: TObject);
begin
if Percent = 100 then
 Percent := 0;
Percent := Percent + 1;
StatusBar1.Invalidate;
end;

end.



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.024 c
14-1100002724
ИМХО
2004-11-09 15:18
2004.11.28
В чем успех FAR-а и Total (Windows) Commander-а?


6-1095342619
kukuikar
2004-09-16 17:50
2004.11.28
Определяю IP


1-1100610211
Chery
2004-11-16 16:03
2004.11.28
Как Borland Socket Server сделать службой ?


14-1100011016
cjkorg
2004-11-09 17:36
2004.11.28
Программа, удаляющая из матрицы [A] строку и столбец, содержащие


4-1098047971
Ashle
2004-10-18 01:19
2004.11.28
Как поменять текст в оперативной памяти ??




   Наверх