当前位置: 首页 > 知识库问答 >
问题:

适用于AWT / Swing的Java JDK 1.7中的Apple Retina显示屏支持

阚小云
2023-03-14

我刚刚意识到,JavaJDK 1.7(截至JDK 7u15)下的AWT/Swing不支持苹果Macbook Pro上的视网膜显示器。例如,Netbean几乎无法忍受在视网膜显示器上运行超过几分钟并使用JDK 1.7。

这已经在这里的StackExchange问题中得到了一定程度的解决,并引用了一篇特定的帖子:

苹果的Java6 JRE将支持HiDPI,但是甲骨文的Java7 JRE目前不支持它。它在Java8的最新开发版本下也不起作用。视网膜笔记本电脑上的摇摆和JavaFX应用程序很模糊。这就是为什么智能仍然在Java6下运行。

我的问题比上面线程的OP提出的问题更具体。

我不到一个月的雇主在所有应用程序中都使用Swing。出于几个原因,我们有兴趣从Java6迁移到Java7。在过去的几天里,另一个开发人员(在视窗系统上)将我们的平台转移到了Java7。当我运行视网膜MacBook Pro时,我在提取我们代码的最新稳定分支时注意到了这个问题。

我是Java的新手,在这个社区的经验不到一年,因此我的问题是:Java社区会对这个问题做出相当大的反应,还是应该预期在Java7中的Swing与苹果视网膜显示器兼容之前会有相当大的延迟(几个月到一年或更长时间)?

共有3个答案

蒯安平
2023-03-14

Oracle从1.7.0_40ea开始完全支持Retina。然而,视网膜缺乏API。例如,像Apple JDK一样,不支持HiDPIScaledImages。您可以在这里找到Oracle JDK中关于Retina支持的一些很酷的提示http://bulenkov.com/2013/06/23/retina-support-in-oracle-jdk-1-7/

农建弼
2023-03-14

上个月,我也对同一主题感兴趣,一段时间后,我在网上发现没有人能确切地回答这个问题。

Oracle对此存在一个开放的bug:http://bugs.sun.com/view_bug.do?bug_id=8000629

根据这一点,它应该在Java1.8中得到修复。但我担心的是,我不确定它是否也会在Swing中得到修复,还是只在JavaFX中得到修复。我在某处读到,JavaFX已经有了修复程序(但不确定是否正式),这并不能解决Swing的问题。

简而言之,在网上搜索了几天后,不幸的是,我找不到答案…

问候你,卢博斯

孟英光
2023-03-14

Java 7u40早期访问现在支持HiDPI (Retina)显示,如此变更日志所示。因此,retina支持现已在以下网站提供:

    < li>Java 6 < li>Java 7u40ea或更高版本 < li>Java 8
 类似资料:
  • 问题内容: 我刚刚意识到Java JDK 1.7(自JDK 7u15起)下的AWT / Swing不支持Apple Macbook Pro上的Retina显示器。例如,Netbeans几乎无法忍受在Retina显示器上运行超过几分钟并使用JDK 1.7的情况。 此处的StackExchange问​​题已在某种程度上解决了该问题,并引用了一个特定的帖子: Apple的Java 6 JRE将支持HiD

  • 问题内容: 我有一个使用Swing制作的Java应用程序,并且使用了一个DJ Native Swing浏览器。当我尝试在OS X上使用它时,即使我添加了swt.jar,它也会一直抛出。有人可以告诉我我做错了吗? 这是我的堆栈跟踪。 问题答案: 漫长的等待之后,我终于找到了jar文件。 这里 http://download.eclipse.org/eclipse/downloads/drops4/S

  • 问题内容: 我想在我的python代码中包含开放式街道地图(OSM)。 我已经阅读了很多有关OSM的网页。但是不幸的是,我对哪种包装最满意感到迷茫。 我正在寻找一种在我的应用中获取OSM映像的简便方法。当我开始时,我想到的是: 稍后,我想在此plt中添加绘图我的其他数据。(我知道我需要处理预测等) 我不需要/想要的: 在我自己的网站上显示 要将我的数据上传到某些Internet服务器 互动功能,例

  • 我试图通过Jenkins在UBUNTU AWS/VM上使用XVFB执行无头铬硒测试。 预构建执行外壳程序: 当构建开始时,我看到: 最后: 现在,通过 MAC 上的终端,我使用 命令连接到 VM。 并使用 VNC 查看器,我正在连接到本地主机:5900。它连接了,但我只看到一个黑屏。我期待屏幕上的Chrome浏览器窗口。 我该如何解决这个问题并在vncviewer上观看Chrome window?

  • 上下文:我有一个从父“启动器”程序运行的Swing JFrame应用程序。启动器负责检查更新和实际更新应用程序。因此,它在儿童类加载器中运行该应用程序,最终在新的jar可用时重新启动它。 Boes有人对正在发生的事情有洞察力吗?我是不是应该做点别的事情来把一切都清理干净?

  • 显示文字或者表情。 用法 Your browser does not support the video tag. 案例:保险箱 说明:使用旋钮制作密码器,通过显示屏显示密码。输入密码正确后指示灯亮起,按下按钮保险箱被开启。 所需模块:电源、蓝牙模块、按钮、旋钮、显示屏、双舵机驱动、舵机驱动包、转接线10cm。