java:有什么方法可以检测显示配置的变化?

标签 java swing

我的一位同事希望我的 Swing 应用能够正确适应第二个显示器的移除。

除了轮询以重复计算虚拟边界之外,还有什么方法可以得到通知吗? (根据 http://download.oracle.com/javase/6/docs/api/java/awt/GraphicsConfiguration.html 中的代码示例)

最佳答案

嗯,棘手的一个。因为 GraphicsConfiguration 类不会给我们任何监听器,所以我只有几个选择:

  1. (如果是 Windows)使用 JNI 接口(interface)来 Windows 检测显示设置 更改并将它们转发给 Java。 这将是 SystemEvents::DisplaySettingsChanged Activity 。

  2. 创建一个简单的轮询线程 - 检索结果的计时器 Toolkit.getDefaultToolkit().getScreenSize() 正如您之前所说。

关于java:有什么方法可以检测显示配置的变化?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5302671/

相关文章:

java - 检索项目 :No resource found that matches the given name 'Theme.AppCompat.Light' . 的父项时出错 MY R.java 丢失

java - 将字符与正则表达式匹配

java - 拖动开始时显示放置目标

Java Swing 游戏板

Java Swing透明无限加载/加载动画闪烁

java - 褪色图像 - Swing

java - 只运行相应源代码已更改的单元测试?

java - JTree 中对每个节点使用复选框进行部分选择

java - Swing JOptionPane背景颜色不同

java - 使用循环创建 java jbutton