极语言官方网站

系统事件——通知消息

通过窗口可以实现跨进程通信:
整数 窗口=查找窗口(0,"窗口标题"); 通过窗口名获取到相应程序的窗口对象
发送消息(窗口,设置文本,0,"标题文字"); 修改窗口对象文字可以修改此窗口的标题栏
发送消息(窗中,设置图标,0,载入图标(0,32518)); 修改程序窗口的小图标为盾牌图标
整数 按钮=获取控件(窗口,1); 假如此窗口的1号控件是个按钮,获取到按钮控件的子窗口对象
整数 标签=获取控件(窗口,2); 假如此窗口的2号控件是个标签,获取到标签控件的子窗口对象
整数 编辑=获取控件(窗口,3); 假如此窗口的3号控件是个编辑框,获取到编辑框的子窗口对象
整数 列表=获取控件(窗口,4); 假如此窗口的4号控件是个列表框,获取到列表框的子窗口对象
整数 组合=获取控件(窗口,5); 假如此窗口的5号控件是个组合框,获取到组合框的子窗口对象
发送消息(按钮,模拟点击,0,0); 模拟点击另个程序窗口的1号按钮,窗口最小化和隐藏都可操作
发送消息(标签,设置文本,0,"修改内容"); 修改另个程序窗口的标签框内容,窗口最小化和隐藏都可操作
发送消息(编辑,获取文本,64,内容); 获取另个程序窗口的编辑框内容,窗口最小化和隐藏都可操作
发送消息(列表,列表添加,0,"项目内容"); 向另个程序窗口的列表框添加内容,窗口最小化和隐藏都可操作
发送消息(组合,组合添加,0,"项目文字"); 向另个程序窗口的组合框添加内容,窗口最小化和隐藏都可操作

跨进程操作窗口可以使用"控制窗口","显隐窗口","设置窗口","移动窗口"和"发送消息","提交消息"等函数
不能使用"取窗口字","改窗口字","窗口字长","取控件字","改控件字","取控件数","改控件数"等函数
通过传递数据类结构体可以自定义传递数据类型,接收方根据不同类型进行相应的处理

发送方:
传递数据类 传送; 先申请一个传递数据类的变量名为:传送
传送.数据="发送一段文字"; 定义传送的数据为一段文字的指针
传送.大小=字串长度(传送.数据); 定义传送的数据大小为该文字的长度
整数 窗口=查找窗口(0,"窗口标题"); 通过窗口名获取到相应程序的窗口对象
发送消息(窗口,传递数据,0,传送); 把自定义数据发送给另个程序的窗口
传送.分类在没有指定的情况下,默认值是0,接收方可以判断为0的分类,是传送的文本内容

接收方:
为 传递数据 接收数据(数据); 在窗体消息里加入这句代码
程序段 接收数据(传递数据类 接收); 增加一个接收数据的程序段
传送内存(内容,接收.数据,接收.长度); 把数据复制到接收程序的变量里
信息框(0,内容,"收到数据",信息图标); 弹出提示数据已接收完成


配置更新$001AWM_WININICHANGE读写"win.ini"时会发送本消息给所有顶层窗口,
通知其它进程该文件已被更改。③参数:0;④数据:名称
设备模式$001BWM_DEVMODECHANGE改变设备模式设置("win.ini")时,处理本消息的应用程序可重新
初始化它们的设备模式设置③参数:0;④数据:名称
系统关机$0011WM_QUERYENDSESSION关机或注销时系统会按优先级给各进程发送,告诉应用程序要关机
或注销了。③参数:0;④数据:0正在关闭事件;1文件要换或资源耗尽;
4强制关闭程序;8用户正在注销
开始关机$0016WM_ENDSESSION关机或注销时系统会发出消息给应用程序,通知程序会话结束。
③参数:0会话结束,非0正在结束;④数据:0正在关闭事件;
1文件要换或资源耗尽;4强制关闭程序;8用户正在注销
时间错误$0017WM_SYSTEMERROR系统时间错误。③参数:0;④数据:0
字库更新$001DWM_FONTCHANGE当系统的字体资源库变化时发送本消息给所有顶级窗口。
③参数:0;④数据:0
时间改变$001EWM_TIMECHANGE当系统的时间变化时发送本消息给所有顶级窗口。
③参数:0;④数据:0
系统暂停$0048WM_POWER当系统将要进入暂停状态时发送本消息(适用于16位的windows)
③参数:1即将挂起,2挂起恢复,3含两种;④数据:0
传递数据$004AWM_COPYDATA当一个应用程序传递数据给另一个应用程序时发送本消息。
③参数:窗口;④数据:传递数据类
取消日志$004BWM_CANCELJOURNAL当用户取消程序日志激活状态时,发送本消息给那个应用程序。
该消息使用空窗口句柄发送。③参数:0;④数据:0
用户出入$0054WM_USERCHANGED当用户已登入或退出后发送本消息给所有窗口;当用户登入或
退出时以及系统更新用户设置时,立即发送本消息。
③参数:0;④数据:0; 自 Windows Vista 起,不支持此消息。
调分辨率$007EWM_DISPLAYCHANGE当显示器的分辨率改变后,发送本消息给所有窗口。
③参数:位深;④数据:分辨率x/y
电源消息$218WM_POWERBROADCAST通知它有关电源管理事件。③参数:4正在扶起,7正在恢复,
10状态更改,18自动恢复,32781设置更改;
④数据:无/POWERBROADCAST_SETTING/
PBT_POWERSETTINGCHANGE
硬件修改$219WM_DEVICECHANGE当设备的硬件配置改变时,发送本消息给应用程序或设备驱动程序。
③参数:事件;④数据:结构
主题更改$31AWM_THEMECHANGED在主题更改事件后广播到每个窗口。③参数:0;④数据:0
消息保留$0000PM_NOREMOVE查探消息处理后,消息不从队列里除掉。
消息清除$0001PM_REMOVE查探消息处理后,消息从队列里除掉。
消息空闲$0002PM_NOYIELD此标志使系统不释放等待调用程序空闲的线程。
用户消息$400WM_USER用于帮助应用程序自定义私有消息,通常形式为:WM_USER + X
程序消息$8000WM_APP用于帮助应用程序自定义私有消息,通常形式为:WM_APP + X


传递数据类——结构体定义

中文名字英文名称长度作用解释
传递数据类COPYDATASTRUCT12包含要通过发送消息传递给另一个应用程序的数据。
传递数据类——成员表
中文英文类型作用解释
分类dwData整数要传递给接收应用程序的数据类型。
大小cbData整数指向的数据的大小(以字节为单位)。
数据lpData整数要传递给接收应用程序的数据。