其他语言

位置:IT落伍者 >> 其他语言 >> 浏览文章

用DELPHI在状态栏中显示进程条[2]


发布日期:2024年06月09日
 
用DELPHI在状态栏中显示进程条[2]

上面的步骤在实际编写代码时是这样实现的

//首先在FormCreate事件中编写代码

procedure TFormFormCreate(Sender: TObject);

var

ProgressBarStyle: integer;

begin

//将状态栏的第二块面板设为的自绘(即psOwnerDraw)

StatusBarPanels[]Style := psOwnerDraw;

//将进程条放入状态栏

ProgressBarParent := StatusBar;

//去除状态栏的边框这样就与状态栏溶为一体了

ProgressBarStyle := GetWindowLong(ProgressBarHandleGWL_EXSTYLE);

ProgressBarStyle := ProgressBarStyle WS_EX_STATICEDGE;

SetWindowLong(ProgressBarHandle GWL_EXSTYLE ProgressBarStyle);

end;

//编写状态栏的自绘代码

procedure TFormStatusBarDrawPanel(StatusBar: TStatusBar;Panel: TStatusPanel;const Rect: TRect);

begin

//注意这里的Panels[]指的就是第块面板因为默认是从开始的

if Panel = StatusBarPanels[] then

with ProgressBar do begin

Top := RectTop;

Left := RectLeft;

Width := RectRight RectLeft ;

Height := RectBottom RectTop;

end;

end;

关键问题解决之后我们来一个小例子这样就可以有一个全局的印象了控件的摆放如(图)所示编写代码如下

procedure TFormButtonClick(Sender: TObject);

var

i : integer;

begin

ProgressBarPosition := ;

ProgressBarMax := ;

for i := to do

begin

ProgressBarPosition := i;

Sleep();

end;

end;

运行一下这个小程序点击一下按钮看到了吧进程条在状态栏中动起来了

[] []

               

上一篇:Delphi实现正弦曲线的绘制

下一篇:用DELPHI在状态栏中显示进程条[1]