关于WINCC内对象亮度调节

最近公司搞技改,要实现这么一个功能,在画面上做一个圆,里面的背景颜色要求亮度可调,从0到100可调,小弟实在搞不出来,各位大侠帮帮忙,谢谢!

问题补充:
轻轻飞大师,能不能告诉我具体怎么调,我刚试过了,没调出来。谢谢了,不胜感激

最佳答案

这个问题的确比较困难,毕竟WinCC目前只能设置背景颜色的RGB值,所以要实现亮度的调节,首先要将RGB转化为HSL坐标,改变其中的L值就可以改变亮度(取值范围为0~240),最后再将HSL转换为RGB坐标即可,详细的编程方法可以参考下面的地址:
 http://faq.csdn.net/read/190689.html

 当然也可以采用如下偷懒的办法,即利用Microsoft Common Dialog控件来实现亮度调节,步骤如下:
 1、画面做一圆,名称改为ColorObject
 2、拖入控件:对象选件板>>智能对象>>控件>>Microsoft Common Dialog Control Version V6.0,名称改为CommDlg
 如提示需要授权,请安装VB,或者直接注册VB6.0安装光盘中的VBCTRLS.REG注册表文件。
 2、画面放置一个按钮,其鼠标左键VBS代码如下:
 Dim CommDlg
 Set CommDlg = ScreenItems("CommDlg")
 CommDlg.Flags=1
 CommDlg.Color = ScreenItems("ColorObject").BackColor
 CommDlg.ShowColor 
 ScreenItems("ColorObject").BackColor = CommDlg.Color

提问者对于答案的评价:
高手,佩服,以后有什么不懂得还得向您请教!

原创文章,作者:more0621,如若转载,请注明出处:https://www.zhaoplc.com/plc271869.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2019年6月11日 上午8:42
下一篇 2019年6月11日 上午8:42

相关推荐