首先请问wincc对象属性事件里面的焦点有什么用?再就是我想使用鼠标划向控件,就能够显示文字和变量(文字和变量参杂在一起),用C怎么做呢?麻烦各位了!
问题补充:
我选的时SymbolLibrary的控件,里面没有提示文本的选项~
那又该怎么做呢
很感谢你的问题补充,但是你想想,那样做的话,控件上的动作不就不能用了吗?
最佳答案
如果是类似OnMouseHover的功能,设置控件的提示文本/ToolTip属性即可。
如果要求文字和变量是动态的,则可以使用C/VBS脚本来使提示文件动态化。将以下脚本添加到控件->属性->提示文本->C动作中:
char szToolTip[255];
sprintf(szToolTip,"当前液位值为:%f",GetTagFloat("LevelTag"));
return szToolTip;
其运行效果为,当鼠标位于控件上方,系统将显示提示文件,内容为类似"当前液位为:3.0"。
----------------------------
对于SymbolLibrary解决办法如下:
1、拖一个Rectangle控件,设置大小与图库控件一样,位置也重叠(注意Rectangle控件置前)。
2、设置Rectangle控件为透明(Dynamic Filling属性为Yes)。
3、设置Rectangle控件为无边框(Line Weight属性为0)。
4、设置Rectangle控件的Tooltip Text属性为你想要显示的内容。
-----------------------------
的确如此,不过你可以将动作转到Rectangle上来解决此问题。
---------------------------
再说说另外一种解决方法(不采用ToolTip):
1、拖一个静态文本,将名称改为ToolTip。放于SymbolLibrary上方,并将其显示属性设置为否。
2、在SymbolLibrary的"鼠标移动"动作中添加如下VBS脚本:
If (x<0) Or (x>item.Width) Or y<0 Or y>item.Height Then
ScreenItems("ToolTip").Visible=False
Else
ScreenItems("ToolTip").Visible=true
End If
提问者对于答案的评价:
很感谢你的耐心回答!
最后的解答方法,提供了很好的思路,不过怎么一起显示文本和变量呢?
原创文章,作者:more0621,如若转载,请注明出处:https://www.zhaoplc.com/plc275482.html