熱點推薦:
您现在的位置: 電腦知識網 >> 編程 >> Delphi編程 >> 正文

用DELPHI在狀態欄中顯示進程條[2]

2022-06-13   來源: Delphi編程 


  上面的步驟在實際編寫代碼時是這樣實現的

//首先在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;
  運行一下這個小程序點擊一下按鈕看到了吧進程條在狀態欄中動起來了

[]  []  


From:http://tw.wingwit.com/Article/program/Delphi/201311/24750.html
    推薦文章
    Copyright © 2005-2022 電腦知識網 Computer Knowledge   All rights reserved.