热情软件屋

 

如何在VB5中实现一个不规则外形的的窗口


编号:QA000317
建立日期: 1999年1月9日 最后修改日期:2000年3月27日
所属类别:

徐达成:
    请问如何在VB5中实现一个扇形的窗口?我只找到设置多边形、圆形等区域的函数,没有找到设置扇形区域的函数,另外如果想实现一个不规则的外形的窗体(类似于手画的奇异形状),如何设置区域?
    

回答:

    Windows API的区域设置功能还是比较全面。对于复杂的区域可以使用CombineRgn函数将两个区域进行组合,而且组合支持与、或等多种关系。比如扇形就可以使用圆和多边形进行与组合而成。详见QA000260 "是否有改变Form外形(如圆形)的方法"
    
    Nevins问:
    请问如何制作外形极不规则的窗体。我想做一个外形特殊的窗体,可是不知怎么做,贵站上提供的方法只能做出圆形、椭圆、扇形等一些比较规则的窗体,而我想做一个心形或更为复杂的窗体,只用这几种图形是不能组合出来的,请问如何实现我的愿望呢?
    回答:
    不管你的外形多么不规则,只要它是封闭的都可以做出来。我们介绍的方法的实质是先建立一个区域,然后调用SetWindowRgn函数改变窗体的形状。API函数CreatePolygonRgn可以建立任意多边形。当然我们提供的那个工具只能处理一些简单的形状,对于复杂的形状你需要手工获得坐标,稍微麻烦一些。比如心形不过是四个扇形组合而成。

此问题由李海回答。

 
把这个问题推荐给朋友
   
   
您的意见类别
您的名字
您的电子邮件
您的建议(请尽可能详细)
 
 

版权所有 1997-2008 热情软件屋
如果您有任何建议和意见, 请给我发个电子邮件 askpro@china-askpro.com
Web Designed by ZebraStudio