|
在Windows2000开始或关闭的时候,有一条颜色渐变的进度条,很是好看。我们可以用简单的方法制作类似的进度条。用图片移动的方法可以很方便的实现这一功能。
0 U1 Q/ J) `6 I2 `首先用PhotoShop制作图片。新建一张长为300宽为20的空白图片,选择“直线渐变工具”,在选择框里打开渐变编辑器,选择渐变色的时候须注意一点,必须选择最左边的颜色和最右边的颜色相同的渐变色,这里我们选择“橙、黄、橙渐变”;拉颜色的时候一定得从图片的最左边平衡(按住Shift)地拉到图片的最右边,否则两端的颜色不同会影响效果。制作满意后可存储副本为BMP或JPG格式。 ! l. E. r4 L0 P9 g
7 s8 E* e p m( u& T7 u! q* r2 i接着用C++ Builder写程序(所有对象名都取默认值)。在窗体上添加一个TPanel对象,把它的BorderStyle设为bsSingle。在Panel1里添加两个Timage对象,两者的Picture属性都指定为刚才我们制作的那张图片。添加一个TTimer对象,把它的Interval属性设为10。 % }$ }! x' Z1 }7 N/ Y1 W4 L# }
在Form1的Show事件里添加如下代码:
2 D& E; M* O* D1 x Image1->Top =0;
/ h1 B$ F6 `$ P2 t6 O3 t! a, \0 J Image1->Left=0; ( {, {6 Q" M- f C& e( [1 B
Image1->Height=Panel1->Height;
* P e; ]) Y2 }, O b Image1->Width =Panel1->Width;
, }4 i C$ {" d# \+ s+ N Image1->Stretch =true; * R, z N8 T0 R" c" K d. `
Image2->Top =0; / ^" Z1 w H! h% q
Image2->Left=-Panel1->Width;
* d4 ~ E6 N. L5 i7 { Image2->Height=Panel1->Height; * k1 Y+ I9 h- I3 ]8 s! r
Image2->Width =Panel1->Width;
' W% J( U7 C/ U! R% k* X' v2 N) Y Image2->Stretch =true;
5 ?# a- H5 {7 n5 z- n在Timer1的OnTimer事件里添加如下代码: 5 _+ i' N7 a% H$ H1 s! b9 Z/ _
Image1->Left++;
2 A9 v2 t) T. d* b* |# I if( Image1->Left==Image1->Width)
% G8 H: D; y. r& S K! A. L Image1->Left=-Image1->Width;
. w! h$ B9 x2 O6 a6 { Image2->Left++; / P s- [2 L7 v: E; O; b$ a0 ]0 y
if( Image2->Left==Image1->Width) $ H: k6 E+ V4 r6 S; ]3 b
Image2->Left=-Image1->Width; |