处理数据时点按钮,数据完数据时会自动执行的问题

简介: 处理数据时点按钮,数据完数据时会自动执行的问题

作为软件架构师,经常和大家交流问题。如:



我同事 16:04:39

现在的问题是,我用子线程弹出来进度条界面,但是主线程的主界面还可以操作

我同事 16:05:10

实现效果是,子线程弹出来进度条界面之后,让主界面不能操作

我同事 16:05:37

直到进度条界面结束之后,主界面才可以操作

何志丹工作号@顶丰 16:05:50

那为什么要弄 子线程呢?

我同事 16:08:21

因为主线程正在处理数据,如果这时候在主线程里模态弹出进度条界面的话,那么整个程序会进入假死状态

何志丹工作号@顶丰 16:10:10

主线程 弹出 非模态对话框

我同事 16:11:23

主线程 弹出 非模态对话框的话,那主线程的界面还是可以操作啊

何志丹工作号@顶丰 16:12:07

主线程在处理数据, 操作也没响应啊

我同事 16:17:09

像上图,主线程在处理数据,进度条界面也出来了。然后我不小心点到上面工具栏的一个按钮

我同事 16:17:57

等进度条界面关闭之后,主线程就开始处理我刚才不小心点到的那个按钮

何志丹工作号@顶丰 16:18:21

哦。 明白了

处理数据时, 点工具栏的按钮没响应, 数据处理完后, 会执行那个按钮

何志丹工作号@顶丰 16:19:21

对不?

我同事 16:19:52

是的

何志丹工作号@顶丰 16:20:41

处理数据结束时

把出 WM_PAINT 外的消息都 从消息队列 清空

何志丹工作号@顶丰 16:21:00

或者 全部清空 消息, 然后主动刷新一下界面

我同事 16:22:49

好方法


目录
打赏
0
0
0
0
36
分享
相关文章
Vue中如何设置在执行删除等危险操作时给用户提示(二次确认后执行对应的操作)
这篇文章介绍了在Vue项目中如何实现执行删除等危险操作时的二次确认机制,使用Element UI的`el-popconfirm`组件来弹出确认框,确保用户在二次确认后才会执行删除操作。
Vue中如何设置在执行删除等危险操作时给用户提示(二次确认后执行对应的操作)
弹框下次触发时还保留上次的触发条件
弹框下次触发时还保留上次的触发条件
当update修改数据与原数据相同时会再次执行吗
当update修改数据与原数据相同时会再次执行吗
62 1
2715. 执行可取消的延迟函数
2715. 执行可取消的延迟函数
59 0
|
9月前
|
在用户关闭页面时,提示用户有内容未保存-论onbeforeunload事件的用法
在用户关闭页面时,提示用户有内容未保存-论onbeforeunload事件的用法
161 0
视图、触发器 (一段能自动执行的程序)
视图、触发器 (一段能自动执行的程序)
75 0
element close事件关闭表单,数据替换掉原始列表的数据bug解决
element close事件关闭表单,数据替换掉原始列表的数据bug解决
98 0
SAP 操作,弹出报错 - 已根据规则拒绝服务器触发的操作,是否要查看上个通讯步骤中触发的操作列表 -
SAP 操作,弹出报错 - 已根据规则拒绝服务器触发的操作,是否要查看上个通讯步骤中触发的操作列表 -
SAP 操作,弹出报错 - 已根据规则拒绝服务器触发的操作,是否要查看上个通讯步骤中触发的操作列表 -
同步工具(未完待更新)
在JDK1.7中,同步工具主要包括CountDownLatch(一次性栅栏)、Semaphore(信号量)、CyclicBarrier(循环同步栅栏)、Exchanger(线程间交换器)和Phaser。下面的篇幅中,将依次讲述每种同步工具的概念、用法和原理。
104 0