首页 相关文章 C++Builder中"异形"按钮的实现

C++Builder中"异形"按钮的实现

  异形按钮非常有趣,就是按钮的形状不是标准的长方形或正方形,而有一丝叛逆异形嘛,是不是?怎样才能实现异形按钮呢?由于Window 95增加了对窗口区域概念的支持,使得窗口区域就是所定义的窗口看上去的形状,窗口区域作为窗口的实际边界区域,这样窗口区域不仅定义了窗口的可画区域,而且定义了窗口下隐含区域和响应鼠标击键事件的响应窗口区域。

  按钮的各种形状是在运行时设置的而不是在设计时设置。设计时按钮的形状仍然是长方形或正方形。

  按钮形状的设计分成两个步骤:

  第一步创建按钮的外形,即定义窗口区域。使用API的区域创建函数就可达到目的。区域创建函数很多,主要有CreateEllipticRgn 、CreatePolygonRgn、 CreateRectRgn、 CreateRoundRectRgn,用于创建不同类型的区域显示。如果需要一个复杂区域形状,那么可以分别使用不同的区域函数创建不同的区域,然后调用CombineRgn API函数把它们组合起来。所以说,不仅可以创建出圆形、三角形的按钮,而且还可以创建出其它各种形状的按钮。

  第二步将区域显示应用到窗口上。一旦使用区域函数创建了一个新的区域显示,就可以使用SetWindo...[ 查看全文 ]

2016-02-19 标签:

C++Builder中"异形"按钮的实现的相关文章

手机页面
收藏网站 回到头部