如何不用image在panel上画背景图?(80分)

  • 主题发起人 主题发起人 heipi2002
  • 开始时间 开始时间
H

heipi2002

Unregistered / Unconfirmed
GUEST, unregistred user!
用image做背景后可以实现
align=alclient后
其他的控件就不能排列了。
如何在panel上画背景图?

看一个老大这么写:
var mycanvas:tcanvas;
bit:TBitmap;
begin
mycanvas:=TCanvas.Create;
mycanvas.Handle:=getdc( Pan.Handle);
bit:=TBitmap.Create;
bit.LoadFromFile(imagefile);
mycanvas.StretchDraw(rect(0,0,Pan.Width,Pan.Height),bit);
mycanvas.Free;
end;
结果什么都看不见,为什么?panel没有canvas?!
 
看看 《delphi 高手突破》,里面有
 
在Panel的Paint事件里写你的代码
 
BDFan panel没有onpaint事件呀
《delphi 高手突破》你手头要有的话帮忙看看啦
 
有简单的方法为什么不用?
 
to:hryyx;
是真的不明白,而且用image显示也真的不好看
花点钱买点道理还是值得的。
 
试试这个:
procedure TForm1.Button1Click(Sender: TObject);
var
c: TCanvas;
begin { TODO : 动态创建画布 }
c := TControlCanvas.Create;
TControlCanvas(c).Control := panel1;
c.Brush.Style := bsClear;
c.Draw(0, 0, image1.Picture.Bitmap);
c.Free;
end;
 
代码没有错,检查一下图片路径有没有错,
 
多人接受答案了。
 
后退
顶部