可以根据图片的颜色计算出一个Region,再调用SetWindowRgn()...

解决方案 »

  1.   

    不知VB中能不能继承button类啊??
      

  2.   

    回复: rushing(勇敢的心) 
      用CheckBox控件就可以。不知用checkbox怎么实现啊?? 
     回复: qqyy_sj(♀天地无邪)  
    去哪看啊/?
      

  3.   

    CheckBox有Picture属性,但是需要把Style设成1-Graphical。
      

  4.   

    你可以自己编个控件,控件里只能加Image控件和shape图形空间,因为要实现控件随图片形状改变的话,控件里就不能包括容器控件,所以只能用image加载图片,用shape实现动态效果
    要把usercontrol的属性设置为透明,你还可以把image的适合图象大小尺寸属性给予usercontrol控件,那样编译完的空间就有动态改变尺寸的属性和图象随控件大小尺寸改变而适合的属性
      

  5.   

    但是那样都还是不能得到一个多边形的边框啊!!!
    比如说图片是一幢房子,那么这个按钮的形状就得是一个房子的样子
    那么用SHAPE控件出何能画出这么一个房子的形状???那么问题就是如何得到这样图片你所要的形状,当然这可以用边缘查找得到,但得到之后又如何能让这幅图片中你不想要的部分透明和在边上环 绕不规则的一个按钮的边框???
      

  6.   

    我就图来论的,把区域中的图像和一个全白的图片合并,生成一个新的图片,再载到用户控件中,设置用户控件的MASKCOLOR为白色!各位认为如何?? 
      

  7.   

    利用PhotoShop可以输出gif98a格式的图片,这种图片可以使用透明背景色,再把UserControl的BackStyle设为透明,把MaskPicture设置为gif89a图片就可以得到不规则的窗口了,至于在不规则窗口显示出3D效果,这是图像处理方面的问题,不是那么容易就能解决的。
      

  8.   

    回复人: junwhj(junwhj.myrice.com) ( ) 信誉:115  2002-11-22 00:01:00  得分:0 
     
     
      利用PhotoShop可以输出gif98a格式的图片,这种图片可以使用透明背景色,再把UserControl的BackStyle设为透明,把MaskPicture设置为gif89a图片就可以得到不规则的窗口了,至于在不规则窗口显示出3D效果,这是图像处理方面的问题,不是那么容易就能解决的。
    问题是,难到你要加载一个按钮都用PHOTOSHOP做一张图先吗??那这个的易用性可就太差了,不过既然POHOTOSHOP能那样做出一个背景透明的图,我想用编程也能实现,那么就是这个图片编程如何做了!