zoukankan      html  css  js  c++  java
  • 自定义透明的按钮(图)

    又经过一个不眠之夜,终于写完了一个支持透明显示的按钮控件和Panel控件。将它们的形状弄得稍微好看一点,而且支持换肤(就是设置皮肤图片了。:-))

    1、控件透明化设置

    要在C#中实现控件的透明化,需要使用SetStyle函数进行设置ControlStyles.SupportsTransparentBackColor为true

    2、自绘控件时打开双缓冲

    为了实现双缓冲,同样需要SetStyle函数,不过这里不要看你是在.NET 1.1下还是.NET 2.0环境之下使用了,如果是.NET 1.1,设置方法如下:

                this.SetStyle(ControlStyles.UserPaint, true);
                this.SetStyle(ControlStyles.AllPaintingInWmPaint, true);
                this.SetStyle(ControlStyles.DoubleBuffer, true);

    如果是在.NET 2.0下面,设置方法跟其大同小异

                this.SetStyle(ControlStyles.UserPaint, true);
                this.SetStyle(ControlStyles.AllPaintingInWmPaint, true);
                this.SetStyle(ControlStyles.OptimizedDoubleBuffer, true);

    这里只有最后一次调用SetStyle时用到的参数名不同,效果确实一样的。

     以下图片是两个控件的效果图(设计阶段),注意其中按钮上出现了绘图错误,这不是出现在运行阶段的错误,可能是我的编辑器有问题。

  • 相关阅读:
    POJ 1082 博弈推规律
    博弈论总结
    POJ 2502 Subway 关键在建图
    【算法设计与数据结构】为何程序员喜欢将INF设置为0x3f3f3f3f?
    一位ACMer过来人的心得
    POJ1724 Dij队列优化邻接表
    Dijkstra队列优化矩阵版
    Uva247 Floyd传递闭包+map处理
    简爬新浪新闻网
    爬href链接
  • 原文地址:https://www.cnblogs.com/wpwen/p/711453.html
Copyright © 2011-2022 走看看