有没有人做过:把一幅图显示在一个圆形(或其形状)的区域?
解决方案 »
- 两个uses有何不同 implementation,interface
- 如何调用DLL中第二个窗体
- 又是关于dxBarManager的问题,高手高手高高手请进?
- 如何设置DBGrid中的Column的属性?
- 为什么TreeView的Item的imageindex老控制不了?
- 有什么办法可以取得输往音箱的电流强度,以便在屏幕上显示波形。
- ADOTable不能Post,怎么回事,请高手赐教……
- 如何在DBEdit中 按下“上键”就跳转到上一个TabOrder???
- 請問﹐如何在繁體版2000server中輸入簡體中文(working for taiwan boss,help me)﹗
- 如何在Delphi中使用COM接口中的可选参数的方法?
- 为什么我在测试时ShellExecute()会是这样的结果。没有分了。只剩这20分了! 帮忙看一下!
- 如何设置delphi使得在调试程序时不进入delphi自带的单元文件?
var
bmp: TBitmap;
rgn: HRGN;
begin
bmp := TBitmap.Create;
try
bmp.LoadFromFile('somebmp.bmp'); // 你想显示的图片 rgn := CreateEllipticRgn(10,10,200,200);
if rgn <> 0 then begin
try
SelectObject(Canvas.Handle, rgn);
Canvas.Draw(0,0,bmp);
finally
DeleteObject(rgn);
end;
end;
finally
bmp.Free;
end;
end;
procedure Tmainform.FormPaint(Sender: TObject);
VAR
Y:INTEGER;
FORMRGN:HRGN;
begin
FORMRGN:=CreateEllipticRgn(20,20,500,380);//用其他形状采用其他函数
SETWINDOWRGN(HANDLE,FORMRGN,TRUE);
FOR Y:=0 TO CLIENTHEIGHT DO
BEGIN
CANVAS.Brush.Color:=$100*Y;
CANVAS.FillRect(RECT(0,Y-1,CLIENTWIDTH-1,Y));
END;
end;