|
在Windows2000开始或关闭的时候,有一条颜色渐变的进度条,很是好看。我们可以用简单的方法制作类似的进度条。用图片移动的方法可以很方便的实现这一功能。 ; S1 y0 c# ]$ y
首先用PhotoShop制作图片。新建一张长为300宽为20的空白图片,选择“直线渐变工具”,在选择框里打开渐变编辑器,选择渐变色的时候须注意一点,必须选择最左边的颜色和最右边的颜色相同的渐变色,这里我们选择“橙、黄、橙渐变”;拉颜色的时候一定得从图片的最左边平衡(按住Shift)地拉到图片的最右边,否则两端的颜色不同会影响效果。制作满意后可存储副本为BMP或JPG格式。 7 p, \! |8 S1 z: ]
; x9 q. D# m: e# s+ t+ D: ~ N接着用C++ Builder写程序(所有对象名都取默认值)。在窗体上添加一个TPanel对象,把它的BorderStyle设为bsSingle。在Panel1里添加两个Timage对象,两者的Picture属性都指定为刚才我们制作的那张图片。添加一个TTimer对象,把它的Interval属性设为10。 4 |! t7 H1 ]9 P1 H' p
在Form1的Show事件里添加如下代码:
* o/ C& n' Z( Q4 ^9 q; `% S Image1->Top =0;
1 i* l1 c5 j$ Y Image1->Left=0; 8 x# j) o4 P( o7 F* d9 X
Image1->Height=Panel1->Height;
2 z; F( o# N+ \: L) h0 H k Image1->Width =Panel1->Width;
5 h* Z& S3 ]1 M" r! r2 E Image1->Stretch =true;
7 F9 n5 ?1 A1 p) V# ^/ T4 O Image2->Top =0;
! H. u, z) `0 {) u# T Image2->Left=-Panel1->Width;
( x/ C- S ?8 p! p) M } Image2->Height=Panel1->Height; + ^+ E1 o6 S1 }5 t0 u
Image2->Width =Panel1->Width;
. j* @/ @% P0 s8 ? B6 p* F Image2->Stretch =true; 7 H4 w6 S! l9 X% G
在Timer1的OnTimer事件里添加如下代码:
' x y+ {& w2 Z* l3 Z/ b Image1->Left++; 3 d& @) Z% i# O$ t
if( Image1->Left==Image1->Width)
4 }! K% n6 c Z7 { Image1->Left=-Image1->Width;
4 J; ^* t6 D* y9 V$ X: E7 E( { Image2->Left++; $ e2 H* E( v! X8 k
if( Image2->Left==Image1->Width) 1 |5 C7 q& c& \3 H" d- }' s
Image2->Left=-Image1->Width; |