可以通过自定义操作窗调用子程序的方法,来无缝唤醒多字段表单,并在多字段表单中修改字段,来更改自定义操作窗的外观。我这边试了一下用这种方法来即时改变自定义操作窗的图标大小,是可行的。
不过建议主程序中将自定义操作窗也打包到子程序,这样可以避免自定义操作窗过于分散,大概的流程是这样的:
动作运行→运行“显示主窗口”子程序,并传入任意参数→“显示主窗口”子程序接收到参数,执行判断,显示“自定义操作窗并等待关闭”→点击自定义操作窗中的“设置”按钮,唤醒子程序“动作设置”→“动作设置”子程序运行,并显示多字段表单→多字段表单中的字段刷新,异步调用“显示主窗口”子程序→“显示主窗口”子程序运行,由于没有传入参数,执行判断,显示“显示自定义操作窗”(并且由于执行的是“显示自定义操作窗”,流程上不会等待,所以虽然嵌套调用了“显示主窗口”子程序,但并不会导致递归)
简化版流程:
主程序→“显示自定义操作窗”(等待)子程序→“设置动作”子程序→“显示自定义操作窗”(不等待)子程序→返回
这样的话能确保“显示自定义操作窗并等待关闭”和“显示自定义操作窗”是放在一起的,避免重复去写窗口内容预处理的一些流程,比如自动给操作窗中的列表元素添加右键菜单,且可以在列表右键菜单里面执行一些修改界面的操作,删除元素什么的,同样使用自定义操作窗中调用子程序的方法,调用“显示自定义操作窗”(不等待)子程序即可。