在Winform界面上有一些按键,例如7个,上面不同的线型(这个可以使用图片来实现),还有一个按键,用来打开颜色对话框,根据选择的颜色的不同,这些线型显示相应的颜色。
以前是两种颜色可以使用换图片来实现,但现在,按键上的颜色是从颜色面板中获取,换图片不现实。而且按键的凹凸感是用Button的FlatStyle来实现的,效果不是很理想。
那位前辈给指点一下。

解决方案 »

  1.   

    对于凹凸效果,我是采用Button的FlatStyle来实现的:
                if (borderButton1.FlatStyle == FlatStyle.Standard)
                {
                    borderButton1.FlatStyle = FlatStyle.Flat;
                    borderButton2.FlatStyle = FlatStyle.Standard;
                    borderButton3.FlatStyle = FlatStyle.Standard;
                    borderButton4.FlatStyle = FlatStyle.Standard;
                    borderButton5.FlatStyle = FlatStyle.Standard;
                    borderButton6.FlatStyle = FlatStyle.Standard;
                    borderButton7.FlatStyle = FlatStyle.Standard;                borderColorButton.Enabled = true;
                }
                else
                {
                    borderButton1.FlatStyle = FlatStyle.Standard;
                }
    效果虽说不理想,但有那个意思。
    至于如何改变图片上的颜色,还没有头绪,哪位指点一下。
      

  2.   

    有难度吗?
    Button1.BackColor=面板上取得的颜色,不就行了?
    嫌凹凸感不够,可以自己画啊;或者干脆继承Button,自定义算了。
      

  3.   

    Button1.BackColor=面板上取得的颜色,这个得到的是Button的背景色,我想实现的是Button上面的线条的颜色变化(这个线条比较简单),