组态注意事项:
有关触发事件的信息可以在“WinCC Information System > Working with WinCC > Creating Process Screens > Working with Objects > The Properties of an Object > The Events Tab in the Object Properties Window”中找到。n
下列表格给出了鼠标/键盘事件动作以及对应参数。
事件 | 动作名称 | 数据类型和参数名称 |
鼠标单击 | OnClick() | char* lpszPictureName, char* lpszObjectName, char* lpszPropertyName, |
按下鼠标左键/右键n 释放鼠标左键/右键 | OnLButtonDown(), OnRButtonDown() OnLButtonUp(), OnRButtonUp() | char* lpszPictureName, char* lpszObjectName, char* lpszPropertyName, UINT nFlags, int x, int y |
按下键n 释放键 | OnKeyDown() OnKeyUp() | char* lpszPictureName, char* lpszObjectName, char* lpszPropertyName, UINT nFlags, int x, int y |
参数含义
参数 | 描述 |
char* lpszPictureName | 执行动作所在的画面名称。 |
char* lpszObjectName | 执行动作的对象名称。 |
char* lpszPropertyName | 当前无用, 传递"ZERO" 。 |
int x | 参数“x”给出了鼠标指针的当前位置,该位置是相对于窗口左侧。 |
int y | 参数“y”给出了鼠标指针的当前位置,该位置是相对于窗口顶部。 |
UINT nFlags | 表明是否也有键 (CTRL、SHIFT、鼠标左键,鼠标右键) 被按下 。 |
UINT nChar | 包含按键的 ASCII 代码。 |
UINT nRepCnt | 包含用户按键下时的采样数, |
参数“lpszPictureName”和“lpszObjectName”用于确定画面和对象名称,通过该参数确定触发事件。参数“lpszPropertyName”目前并没有使用,其值始终为“ZERO”。
参数 "nFlags", "nChar", "nRepCnt", "x" 和"y"介绍可以参见微软的“MSDN Library”,那里有比较详细的描述。如果在 微软的"http://search.microsoft.com/search/search.aspx" 中查找并键入“CWnd::OnLButtonDown”, 可以看到有关 OnLButtonDown 的功能描述。
使用微软的库函数"GetAsyncKeyState()" 可以得到按下的其他键的状态 - 参见条目 ID 14179297。
下面两个屏幕画面显示了一个脚本及其诊断输出,用于说明如何使用这些参数。当发生不同的鼠标事件时,将在 APDIAG 输出窗口中创建相应的诊断输出。
原创文章,作者:ximenziask,如若转载,请注明出处:https://www.zhaoplc.com/plc333137.html