如何在ScrollBox内画图 ( 积分: 50 )

  • 主题发起人 主题发起人 qiangyao
  • 开始时间 开始时间
Q

qiangyao

Unregistered / Unconfirmed
GUEST, unregistred user!
在线等待
 
在线等待
 
在ScrollBox对象中放置一个TImage或TPicture等具有TCanvas属性的对象,然后再在TCanvas对象上画你所需要的图形即可。
 
如樓上的兄弟所說,放一個TImage就可以了

另外,別用PanitBox,因為在屏幕之外的地方,不能保存
 
不放image不能画
 
可以响应控件的WM_PAINT消息;
var dc:HDC;rt:Trect;
begin
//获得当前控件的绘图设备
dc:=GetDc(handle);
//取得可绘图区域
rt:=GetClientRect;
//下面执行你的绘图操作,但是只能用windows api
//
//删除设备
deleteobject(dc);
end;

下面是我实际中用的一个过程
procedure TFeeLineEdit.procpaint(var msg: Tmessage);
var rt:Trect;mdc:HDC;pt:Ppoint;
begin
inherited;
if not FunderLine then
exit;
mdc:=GetDc(handle);
rt:=GetClientRect;
new(pt);
movetoex(mdc,rt.Left+1,rt.Bottom-1,pt);
Lineto(mdc,rt.Right-1,rt.Bottom-1);
dispose(pt);
deleteobject(mdc);
end;
 

Similar threads

后退
顶部