java – Swing在减少Windows时间后忽略第一次单击
发布时间:2020-12-15 02:28:20 所属栏目:Java 来源:网络整理
导读:我有一个处理日期和时间的Swing应用程序,所以很多测试都在改变系统的日期和时间设置. 在测试期间,我们注意到在减少时钟后,应用程序将忽略第一次单击. 这是Swing / Java / Windows的错误吗?这有解决方法吗? 有趣的是,只有在减少日期/时间设置时才会出现此问
我有一个处理日期和时间的Swing应用程序,所以很多测试都在改变系统的日期和时间设置.
在测试期间,我们注意到在减少时钟后,应用程序将忽略第一次单击. 这是Swing / Java / Windows的错误吗?这有解决方法吗? 有趣的是,只有在减少日期/时间设置时才会出现此问题.如果我增加它,应用程序行为正常. 情况: > Swing应用程序正在运行. 代码示例(您可以使用它来证明情况): import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.awt.event.WindowAdapter; import java.awt.event.WindowEvent; import javax.swing.JButton; import javax.swing.JFrame; public class Main { public static void main(String[] args) { final JFrame frame = new JFrame("frame"); final JButton button = new JButton("button"); button.addActionListener(new ActionListener() { public void actionPerformed(final ActionEvent e) { System.out.println("Button Pressed!"); } }); frame.add(button); frame.setSize(200,200); frame.setVisible(true); frame.addWindowListener(new WindowAdapter() { @Override public void windowClosing(final WindowEvent e) { System.exit(0); } }); } } 解决方法
如
here所示,Swing使用日期来检查事件何时发生.因此,在某种程度上,通过放弃您的操作,处理程序在此处起作用,因为它发生在“最后一个操作之前”.我不能确认你这个,但是有些布局管理器或其他处理程序在这里搞乱了一些东西,以防止延迟事件搞乱当前流程.
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- java – “Iterable不能被转换到列表” – 不是“List”一种
- docker-java Docker的java API
- 数据结构与算法之并查集(不相交集合)
- 尝试在java中使用protobuf发送和接收消息,但收到错误:协议
- java – 优雅地结束正在阻塞队列中等待的线程
- java – 请参考JPA @Column注释解释有关insertable = false
- java – 是否可以避免重复maven archiver配置?
- java – 如何在使用Hibernate删除父项时删除所有子行?
- Java Web架构知识整理——记一次阿里面试经历
- java – 你如何思考和预测这样的线程问题的输出?