许多网页都有背景图案,这样可以使页面看起来更加醒目。不过在Delphi里你也可以设计这种类型的窗体。马上会想到的一个方法就是使用image构件,然后指定一幅图片就可以啦。这样做当然是可行的,但是一幅可以充满整个窗体的BMP图,要占用很多的内存空间,这样就划不来了。最好的办法是只下载一幅很小的BMP图,然后把它粘贴到整个窗体上。
这里我没有采用Image构件,而是使用了Bitmap构件,用它来下载一幅很小的位图。首先是在窗体的Public部分加入变量定义:Bitmap:TBitmap;然后在窗体的OnCreate事件中生成此对象,代码如下:
procedure TForm1.FormCreate(Sender:Tobject);
begin Bitmap:=TBitmap.Create;
Bitmap.LoadFormFile('1.bmp');//图文件1.bmp只有1KB大小
end;
第三步是在窗体的OnPaint事件中把位图的图案粘贴到整个窗体上。添加代码如下:procedure TForm1.FormPaint(Sender:Tobject)var x,y:integer;beginy:=0;whiley
do begin X:=0;
while X
do begin cancas.Draw(X,Y,Bitmap);
X:=X+Bitmap.Width;
end;
Y:=Y+Bitmap.Heigth;
end;end;最后不要忘了在窗体的OnDestory事件中释放Bitmap对象。具体代码:Bitmap.Free;好了,这样窗体显示时就会像网页那样带有背景,而且并没占多大的内存空间。