| 作者 | 主题 |
|---|---|
|
呆板吧 奇侠 经验值:6221 发帖数:1151 精华帖:6 |
楼主
主题:斑竹请帮助:用C脚本在WINCC中调出XP自带的计算器,怎样使计算器窗口保持在最上方?
在WINCC中调出XP自带的计算器,为方便操作人员的使用,却发现一个问题:
当他们不关计算器就直接操作WINCC画面,则计算器会一直保留在后台。 怎么样能解决这种问题? 同时我在学习组态手册2中关于调出WINDOWS出错框和询问框时候也遇到这样的问题。 怎么样才能解决这问题? 否则这个功能就不敢在工程中用啊! 同时询问框的窗口中右上角的关闭按扭是不能操作的,怎么才能使能操作? YES和NO按扭的文字是否可以改成其他或中文? 同时还想问一下,这样的C脚本是否占会比较计算机系统工作空间。 因为在WINCC中我不会做相对方便快捷的二次确认按扭,一直想找到一种办法,用这种方法行吗?是否还有什么更好的办法? |
|
dcount107 侠圣 经验值:2840 发帖数:1737 精华帖:55 |
楼
主题:回复:斑竹请帮助:用C脚本在WINCC中调出XP自带的计算器,怎样使计算器窗口保持在最上方?
第一个问题需要使用WINDOWS API函数
quote:[COLOR=BLUE]
HWND Hwnd; BOOL bRet; ProgramExecute("CALC.exe"); Hwnd=FindWindow(NULL,"Calculator"); if (Hwnd) { //printf("\r\n%d",Hwnd); bRet=SetWindowPos(Hwnd,HWND_TOPMOST,300,300,200,200,SWP_NOSIZE); if (!bRet) printf("\r\nSetWindowPos Error!"); } [/COLOR]
非淡泊无以明志,非宁静无以致远
|
|
dcount107 侠圣 经验值:2840 发帖数:1737 精华帖:55 |
楼
主题:回复:斑竹请帮助:用C脚本在WINCC中调出XP自带的计算器,怎样使计算器窗口保持在最上方?
第二个问题很久以前就有了,获取WinCC句柄即可。
quote:[COLOR=BLUE]
HWND Hwnd; Hwnd = FindWindow(NULL,"WinCC-运行系统 - "); if (!Hwnd) Hwnd = FindWindow(NULL,"WinCC-Runtime - "); if (!Hwnd) printf("\r\nGetWinCC Handle Failed!"); MessageBox(Hwnd,"Error Text","My Error Box",MB_OKMB_ICONEXCLAMATIONMB_SETFOREGROUNDMB_SYSTEMMODAL); [/COLOR]
非淡泊无以明志,非宁静无以致远
|