想开发一个非矩形的控件,有什么办法吗? ( 积分: 200 )

  • 主题发起人 主题发起人 yuanscar
  • 开始时间 开始时间
Y

yuanscar

Unregistered / Unconfirmed
GUEST, unregistred user!
如题,现在做的是类似于shape一样的,边缘透明,但实际上shape还覆盖着空白的区域,能不能做一个非举行的控件啊!
 
如题,现在做的是类似于shape一样的,边缘透明,但实际上shape还覆盖着空白的区域,能不能做一个非举行的控件啊!
 
改写控件的paint方法,在该方法中用Canvas画图时,设置Canvas.Brush.Style:=bsClear;
即可实现控件的透明功能,并可以画任意外形形状.
 
这个问题我试过了,但好像控件本身还是矩形的。我要实现的是在窗口上放的控件能够象设计期时一样拖动等,所以需要在鼠标点击透明区域的时候能激活被覆盖在下面的控件。我看了一下,好像瑞星的小狮子就是这样的一个功能。点击透明区域的时候不会选择本身。
请各位帮忙!
 
可以对, 不过要从 TWinContol 或者 它的后代 继承, 用
CombineRgn
CreateEllipticRgn
CreateEllipticRgnIndirect
CreatePolygonRgn
CreatePolyPolygonRgn
CreateRectRgn
CreateRectRgnIndirect
CreateRoundRectRgn
SetWindowRgn
等等函数,创建一个不规则窗口作为控件的窗口。
 
后退
顶部