许多网页都有背景图案,这样可以使页面看起来更加醒目。不过在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;begin y:=0;while y
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;好了,这样窗体显示时就会像网页那样带有背景,而且并没占多大的内存空间。