;
帖子
3919 
精华
积分
11710 
鱼币
0 ¥ 
来自
大连 
在线时间
1858 小时 
注册时间
2007-6-11 
最后登录
2009-10-20 

贴图大师勋章新人进步勋章宣传大使勋章论坛元老勋章

3
发表于 2009-1-5 19:48 | 只看该作者
鐘舵佹潯鎻掑叆鍙鎺т欢 - 缂栫▼搴 - Powered by SupeSite

浣犵殑浣嶇疆锛缂栫▼搴 >> 璧勮 >> Delphi >> 绋嬪簭搴旂敤 >> 璇︾粏鍐呭 鍦ㄧ嚎鎶曠ǹ

鐘舵佹潯鎻掑叆鍙鎺т欢

鍙戝竷: 2008-6-26 20:33 |  浣滆: admin |   鏌ョ湅: 7娆

width="84%">鐘舵佹潯鎻掑叆鍙鎺т欢

銆銆棣栧厛,鍦‵ROM涓斁缃竴涓姸鎬佹潯鎺т欢Status銆傝皟鑺係tatus.Panels锛屽湪鍏朵腑鎻掑叆3涓姸鎬佹潯宓屾澘銆傛妸绗簩涓祵鏉跨殑鍙傛暟Style璁剧疆鎴恜sOwnerDraw銆傝繖涓鐐瑰緢閲嶈锛屽鏋滄病鏈夎繖鏍峰仛锛屽皢姘歌繙鏃犳硶鏄剧ず鏂囧瓧浠ュ鐨勪笢瑗裤傜劧鍚庡湪鐘舵佹潯鐨凮nDrawPanel浜嬩欢涓彃鍏ヤ竴琛孲tatusDrawRect:=rect;浠ヨ褰曞弬鏁癝tyle璁剧疆鎴恜sOwnerDraw鐨勫祵鏉跨殑鍧愭爣銆

銆銆绗簩姝ワ紝鍦‵ROM鐨凱rivate涓敵鏄庝竴涓猅ProgressBar绫诲瀷鐨勫彉閲廝rogress銆傜劧鍚庡湪涓涓彍鍗曠殑娑堟伅鍝嶅簲杩囩▼涓皟鐢–reate鏂规硶鎶婂畠寤虹珛璧锋潵锛屽啀璁惧畾鐘舵佹潯涓鸿杩涚▼鏉$殑鐖剁獥鍙o紝杩涜岃瀹氳繘绋嬫潯鐨勪竴浜涘繀瑕佸弬鏁般備緥濡傦細鏈澶у笺佹渶灏忓笺佸師鐐瑰潗鏍囥侀珮搴﹀拰瀹藉害绛夈

銆銆鏈鍚庣紪璇戜竴涓嬭绋嬪簭锛屼綘灏变細鍙戠幇鍦ㄧ姸鎬佹潯涓鎻掑叆浜嗕竴涓繍鍔ㄧ潃鐨勮繘绋嬫潯銆

銆銆绫讳技鍦帮紝浣犺繕鍙互鍦ㄧ姸鎬佹潯涓彃鍏ュ叾浠栧彲瑙嗘帶浠讹紝濡傦細鎸夐敭銆佷綅鍥惧拰鍔ㄧ敾鎺т欢绛夌瓑銆

浠ヤ笅鏄寖渚嬬▼搴忥細

type

TForm1 = class(TForm)//瀹氫箟涓涓獥鍙g被

Status: TStatusBar;

MainMenu1: TMainMenu;

file1: TMenuItem;

insertprocressbar1: TMenuItem;

N1: TMenuItem;

exit1: TMenuItem;

procedure FormCreate(Sender: TObject);

procedure StatusDrawPanel(StatusBar: TStatusBar; Panel:

TStatusPanel;const Rect: TRect);

procedure FormDestroy(Sender: TObject);

procedure exit1Click(Sender: TObject);

procedure insertprocressbar1Click(Sender: TObject);

private

colorindex : integer; BookOpen:Boolean;

ssbmp:Tbitmap; progress:TProgressbar;

StatusDrawRect:TRect; //璁板綍瑕佹彃鍏ョ姸鎬佹潯鐗规妧鐨勫潗鏍囪寖鍥

public

{ Public declarations }

end;

var

Form1: TForm1;

implementation

{$R *.DFM}

procedure TForm1.FormCreate(Sender: TObject);

begin

end;

procedure TForm1.StatusDrawPanel(StatusBar: TStatusBar;

Panel: TStatusPanel; const Rect: TRect);

begin

StatusDrawRect:=rect; //璁板綍瑕佸疄鐜扮姸鎬佹潯鐗规妧鐨勫潗鏍囪寖鍥

end;

procedure TForm1.exit1Click(Sender: TObject);

begin

close;

end;

procedure TForm1.insertprocressbar1Click(Sender: TObject);

var i,count:integer;

staPanleWidth:integer;

begin

progress:=TProgressbar.create(form1);

count:=3000; //杩涚▼鏉$殑鏈澶у

staPanleWidth:=status.Panels.Items .width;

//鐢变簬杩涚▼鏉$殑寰堝锛屾墍浠ラ渶瑕佹敼鍙樼姸鎬佹潯宓屾澘鐨勫搴︼紝杩欓噷鍏堜繚瀛樺畠鐨勫搴︺

status.Panels.Items .width:=150; // 鏀瑰彉瀹藉害

status.repaint;

with progress do

begin

top:=StatusDrawRect.top;

left:=StatusDrawRect.left;

width:=StatusDrawRect.right-StatusDrawRect.left;

height:=StatusDrawRect.bottom-StatusDrawRect.top;

//璁惧畾杩涚▼鏉$殑瀹藉害鍜岄珮搴

visible:=true;

try

Parent := status; //璇ヨ繘绋嬫潯鐨勬嫢鏈夎呬负鐘舵佹潯status

Min := 0; Max := Count; //杩涚▼鏉$殑鏈澶у拰鏈灏忓

Step := 1; //杩涚▼鏉$殑姝ラ暱

for i := 1 to Count do

Stepit; // 绱姞杩涚▼鏉

ShowMessage('鐜板湪锛岃繘绋嬫潯灏嗚浠庡唴瀛樹腑琚噴鏀');

finally

Free; //閲婃斁杩涚▼鏉

end; //try

end; //with

status.Panels.Items .width:=staPanleWidth; //鎭㈠鐘舵佹潯宓屾澘鐨勫搴

end; //begin

end.

鎵撳嵃 | 鏀惰棌姝ら〉 |  鎺ㄨ崘缁欏ソ鍙 | 涓炬姤
涓婁竴绡 涓嬩竴绡
 

璇勫垎锛0

鍙戣〃璇勮
鏌ョ湅鍏ㄩ儴鍥炲銆愬凡鏈0浣嶇綉鍙嬪彂琛ㄤ簡鐪嬫硶銆