多窗口同步操作演示软件

易语言 2020-07-17 11:04:30

多窗口同步操作演示软件

.DLL命令 GetClassName, 整数型, , "GetClassNameA", , user32.dll为指定的窗口取得类名 以字节数表示的类名长度;排除最后的空中止字符。零表示出错。会设置GetLastError
.参数 句柄, 整数型, , 欲获得类名的那个窗口的句柄
.参数 文本, 文本型, , 随同类名载入的缓冲区。预先至少必须分配nMaxCount+1个字符
.参数 文本长度, 整数型, , 由lpClassName提供的缓冲区长度;

.DLL命令 GetWindowText, 整数型, , "GetWindowTextA", , user32.dll取得一个窗体的标题(caption)文字,或者一个控件的内容(在vb里使用:使用vb窗体或控件的caption或text属性) 复制到lpString的字串长度;不包括空中止字符。会设置GetLastError
.参数 句柄, 整数型, , 欲获取文字的那个窗口的句柄
.参数 文本, 文本型, , 预定义的一个缓冲区,至少有cch+1个字符大小;随同窗口文字载入
.参数 文本长度, 整数型, , lp缓冲区的长度;

取句柄数组 (“画图”, 句柄)
重定义数组 (画图子窗口, 假, 取数组成员数 (句柄))
.如果真 (取数组成员数 (句柄) < 2)
.如果 (信息框 (“需要两个或则两个以上画图才看得到效果” + #换行符 + “是否启动两个画图?”, 4, ) = 5)
运行 (“mspaint.exe”, 假, )
延时 (500)
取句柄数组 (“画图”, 句柄)
重定义数组 (画图子窗口, 假, 取数组成员数 (句柄))

.否则
返回 ()
.如果结束

.如果真结束
输出调试文本 (到文本 (取数组成员数 (句柄)) + “窗口”)
鼠标钩子 = api_设置系统钩子 (14, 取子程序地址 (&鼠标钩子回调函数), api_取实例句柄 (0), 0)
按钮1.禁止 = 取反 (按钮1.禁止)
按钮2.禁止 = 取反 (按钮2.禁止)
' 下面的代码是取画图的画板句柄
.计次循环首 (取数组成员数 (句柄), i)
枚举子窗口 (句柄 [i], 子窗口)
.计次循环首 (取数组成员数 (子窗口), j)
.如果真 (取类名 (子窗口 [j]) = “Afx:1000000:8”)
画图子窗口 [i] = 子窗口 [j]
跳出循环 ()
.如果真结束

.计次循环尾 ()
.计次循环尾 ()