发信人: sender()
整理人: kingron(2000-12-05 19:18:53), 站内信件
|
【 在 gsta (fido) 的大作中提到: 】
: Delphi好像不能把ProgressBar放在StatusBar的Panels中,
: 那如何实现在StatusBar中显示进程条呢?
: 谢谢!
给你一个DEMO:
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dia logs,
StdCtrls, ComCtrls;
type
TForm1 = class(TForm)
StatusBar1: TStatusBar;
Button1: TButton;
procedure StatusBar1DrawPanel(StatusBar: TStatusBar;
Panel: TStatusPanel; const Rect: TRect);
procedure Button1Click(Sender: TObject);
private
progressbar: TProgressBar;
barRect: TRect;
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.DFM}
procedure TForm1.StatusBar1DrawPanel(StatusBar: TStatusBar;
Panel: TStatusPanel; const Rect: TRect);
begin
barRect := Rect;
end;
procedure TForm1.Button1Click(Sender: TObject);
var
I, StepCount : integer;
begin
progressBar := TProgressBar.Create (Form1);
StepCount := 1000;
with progressbar do
begin
top := barrect.top;
left := barrect.left;
width := barrect.right - barrect.left;
height := barrect.bottom - barrect.top;
visible := true;
try
parent := statusbar1;
min := 0;
max := stepcount;
step := 1;
for i := 1 to stepcount do
stepit;
finally
free;
end;
end;
end;
end.
-- http://sender.163.net | http://sender.yeah.net
* iTimer - 网络时间钟
* Wave Master - 音频处理软件
* Matrix Screen Saver - 黑客帝国屏幕保护
-- 请在“给作者寄一份”打个勾,谢谢。--
※ 来源:.月光软件站 http://www.moon-soft.com.[FROM: 202.105.34.110]
|
|