使用无窗口透明控件,好处是控件不是从窗口类继承而来的,可以节省一些内存资源,难点是鼠标控制和坐标计算,缺点是无法直接响应键盘事件。而且,需要注意的是,在Paint事件里,坐标是从(0,0)开始的,而在其它地方,坐标是相对于容器的。缺点是设计时,无法用鼠标点选控件(只能用键盘移动),微软公司也在MSDN里说了这是一个BUG,但至今未解决。

    好了,废话俺不说了,打开VB6,新建一个“标准 EXE”,然后添加一个用户控件,把控件的BackStyle属性设置为“透明”,把Windowless属性设置为“True”,再把俺的代码复制过去,一个美观大方的透明浮动按钮便完成了。用户还可以设置控件的Caption属性和Picture属性进一步美化。如有不解之处,可与俺联系:

 

效果如下:

 

 

Logo

权威|前沿|技术|干货|国内首个API全生命周期开发者社区

更多推荐