不是用设置TImage.align=client啊,因为我还需要将其他控件的这个属性设置为client的,这样势必冲突不。程序效果就象豪杰3000那样的更改背景图一样?

解决方案 »

  1.   

    直接用ADDITIONAL页上的IMAGE控件就行了把ALIGN的属性值改为ALCLIENT  和窗体一样大在IMAGE控件中PICTURE属性加JPG,BMP等图就行了然后再加别的控件做别的事就OK了
      

  2.   

    对了你还要多个图片的是吧。。
    你用同一个页上的splitter这个控间把多图隔开
      

  3.   

    不是啊 除了这个方法呢?因为我还需要将其他控件的ALIGN的属性值设置为ALCLIENT
      

  4.   

    form.Canvas.Brush.Bitmap.LoadFromFile(...)
      

  5.   

    不清楚了
    因为
    把ALIGN的属性值改为ALCLIENT 就已经可以了
    你的意思是什么意思啊
    什么冲突?你把多个控件的ALIGN都设置成一样也不会冲突啊
      

  6.   

    晕!我只是想换个背景图而已,大多数人会觉得换背景图很丑陋?!
    全屏的啊,如果有另一个控件设置成align,背景图当然不再是全屏了啊
      

  7.   

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

  8.   

    Draw是最好的办法。占用系统资源少