DevExpress:颜色选择控件ColorPickEdit

本文为我的.NET控件库DevExpress使用笔记,我的DevExpress版本为13.1

1、控件类型全称:DevExpress.XtraEditors.ColorPickEdit

2、控件所在程序集:DevExpress.XtraBars.v13.1.dll

3、工具箱内分类:DX.13.1: Common Controls

4、控件样式截图

215057_Ei7g_1425762.png

5、ColorPickEdit的下拉菜单中可以选择三种类型的颜色,分别是Custom、Web、System,它们对应于VisualStudio颜色选择工具中的“自定义”、“Web”和“系统”。(如下图所示)

215201_nK7x_1425762.png

1)自定义(Custom)颜色是由结构System.Drawing.Color提供的颜色,包括颜色的RGB信息

System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(192)))), ((int)(((byte)(128)))))

2)Web颜色也是由结构System.Drawing.Color提供的,它们是“对Web安全的颜色”(Web-safe Color),C#为每个Web颜色都提供了get方法,便于获取这些颜色,如:

System.Drawing.Color.LawnGreen

一个用于查阅216个Web安全色的网页:http://www.bootcss.com/p/websafecolors/

有关网页颜色的介绍,可以参考相关维基百科介绍页面:https://en.wikipedia.org/wiki/Web_colors

3)系统(System)颜色与前两种颜色不同,根据微软对System.Drawing.SystemColors类的描述,该类中的所有颜色也都是System.Drawing.Color结构的,这种结构是Windows显示元素的颜色,但由于不同版本的Windows对同一个SystemColor的具体赋值会不同,因此考虑程序会跨多个Windows系统使用,尽量少用或慎用这样的颜色。下面是一个名为ActiveCaption的系统颜色:

System.Drawing.SystemColors.ActiveCaption

6、点击“Custom”下的“More Colors”,可以进入“Select Color”界面选择更多的颜色。一个System.Drawing.Color结构可以描述一个颜色的四个属性,即A(Alpha分量,用于描述透明度)、R(Red,红色)、G(Green,绿色)、B(Blue,蓝色)。这四个属性都可以通过“Select Color”界面设置出。“Select Color”界面支持两种指定颜色的模型,分别是RGB模型和HSB模型。

7、RGB Model(RGB模型),即由红、绿、蓝三个颜色组合成其他的所有颜色。实际上,RGB的配置仅出现在界面的右上角,左侧的区域为对HSL颜色空间的配置,HSL是三个英文单词的缩写,Hue(色相)、Saturation(饱和度)、Lightness(亮度)。界面左侧方姓区域的横坐标为色相(Hue),纵坐标为饱和度(Saturation),右侧有一个调节亮度(Luminance)的工具,这三组坐标位置发生改变后,右侧Red、Green、Blue三个位置的数字也会相应发生改变。下面的透明度(Opacity)用于设置Color结构中A的部分,取值范围从00(0)到FF(255),当取值为FF时,右边#号内的颜色只有6个十二进制数字,否则会出现8个,前面两个表示透明度。右下角的“Make Web-Safe”按钮将当前选中的颜色转换到最接近的对Web安全的颜色。

220750_7265_1425762.png

最下面的Sample用于预览调配出的颜色

8、HSB模型,中文名为“色调-饱和度-亮度模型”,这个界面用于通过HSV色彩空间配置颜色。HSV也是三个英文的缩写:Hue(色相)、Saturation(饱和度)、Value(明度)。因为明度一词的英文实际为Brightness,因此在配置界面中,明度被写作Brightness而不是Value。在右上角的RadioButton中,选中哪个属性,哪个属性就会出现在矩形选择区域右侧的TrackBar中。Opacity刻度条、Make Web-Safe按钮等功能和RGB Model中是一样的。

220826_Okix_1425762.png

关于HSL和HSV两种颜色空间,可以参考维基百科相关条目:https://en.wikipedia.org/wiki/HSL_and_HSV

9、设有一个ColorPickEdit控件的实例colorPickEdit1,可以通过colorPickEdit1.Color获取当前选中的颜色。EditValueChanged用于捕获当前选中颜色发生改变的事件。

END

转载于:https://my.oschina.net/Tsybius2014/blog/518168

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值