我又两个问题:第一,如何用用一幅图,平铺在窗体上。第二,如何使这个窗体上所有控件都可以显示这幅图。(200分)

  • 主题发起人 主题发起人 adailee
  • 开始时间 开始时间
A

adailee

Unregistered / Unconfirmed
GUEST, unregistred user!
请教!
adailee@163.com
 
1使用TImage
2使用TImageList
 
说清楚些,我没有理解
 
(1)一幅很小的底纹图像,想要平铺到整个窗体上。如何做最好?
(2)窗体上的控件,主要是TPanel,TPageControl这样的东东,如何实现让它们也可以显示底纹?而且不是参差不齐。
 
第一个问题可以这样解决:
Self.Brush.Bitmap := Image1.Picture.Bitmap;
Self.Refresh;

这种方法甚至可以用来解决第二个问题
GroupBox1.Brush.Bitmap := Image1.Picture.Bitmap;
GroupBox1.Refresh;

问题有两个,第一,图像没有过渡;第二,GroupBox1的Text没有透明。
 
给你个例子(Delphi的帮助里自己带的)

var
Bitmap: TBitmap;
begin
Bitmap := TBitmap.Create;
try
Bitmap.LoadFromFile('MyBitmap.bmp');
Form1.Canvas.Brush.Bitmap := Bitmap;
Form1.Canvas.FillRect(Rect(0,0,100,100));
finally
Form1.Canvas.Brush.Bitmap := nil;
Bitmap.Free;
end;

end;

TPanel,TPageControl:使用他们的(xx as TWinControl).Brush即可,可以不用
FillRect(Rect(0,0,100,100))去绘制,他们自己回去绘制。
 
这可以做到,但是如何实现TGroupBox的透明问题呢?
 
后退
顶部