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

Java:可以在Java中禁用Windows DPI扩展吗?

万明辉
2023-03-14

Windows缩放弄乱了我的JavaFX应用程序上的UI。在java中有什么方法可以让windows知道这个特定的应用程序不应该缩放吗?谢谢

共有3个答案

李联
2023-03-14

如果你正在使用Windows,我想你应该看看这里:Java禁用dpi感知不工作。它对很多人都有效。

锺离飞鸣
2023-03-14

我还没有用JavaFX尝试过,但这是一个经常出现的问题,可能会受到程序(exe)属性的影响。尝试选择编辑器(Netbeans.exe或Eclipse.exe),选择属性,然后切换到兼容性选项卡。在该选项卡上,您应该看到一个标记为“禁用高DPI设置的显示比例”的选项。

如果你这样做了,选择它,运行你的程序,看看它是否工作。如果是这样的话,那就意味着在为世界其他地方编译程序之后,你要确保你的启动器在发布之前也已经说过禁用了伸缩功能。Slick2D甚至Swing都有类似的问题。

还可以使用NIO在内部更改程序属性。2.但我脑子里的细节还不够清楚。

如果可行,请告诉我。

包阳成
2023-03-14

这应该是可能的系统属性-Dprism.allowhidpi=false。正如您特别要求的“在Java内”,这可以通过以下方式完成。

System.setProperty("prism.allowhidpi", "false);

重要的是,在JavaFX初始化之前,即在Application.launch()之前,这是应用程序的最开始

 类似资料:
  • 问题内容: 只是在玩,并想出了一个甜蜜的方法来使用此方法在JavaEnum toString()方法中向s 添加功能。 一些进一步的修改使我 几乎 也可以添加整洁的(即不引发异常)反向查找,但是存在问题。报告: 有办法吗? 这里的目的是(通过一个接口实现,使用像我在链接的答案中添加的方法一样)静默地添加一个在不引发异常的情况下执行该功能的方法。可能吗?现在显然可以扩展- 到目前为止,我的主要Jav

  • 问题内容: 这是我要完成的工作,我有一个包含一些值的枚举的类,我想对该类进行子类化并向该枚举添加更多值。这是一个不好的例子,但是: 因此HexDigits.Digit包含所有十六进制数字。那可能吗? 问题答案: 不,这不可能。最好的办法是使两个枚举实现和接口,然后使用该接口代替枚举。所以:

  • 在可能的副本上: 此线程不是在询问如何扩展类。它问为什么一个声明为的类可能会扩展另一个类。 从该线程: <code>final</code>类只是一个不能扩展的类。 但是,我有一个帮助程序类,我声明它是,并了另一个类: Eclipse没有检测到任何错误。我已经测试了这个类,并且PDF是成功生成的,没有错误。 为什么我能够课程,而理论上我不应该延长? (如果重要的话,我正在使用Java7。)

  • 本文向大家介绍接口可以在Java中扩展多个接口吗?,包括了接口可以在Java中扩展多个接口吗?的使用技巧和注意事项,需要的朋友参考一下 是的,我们可以做到。一个接口可以扩展Java中的多个接口。 例: 输出:

  • 问题内容: 我正在阅读有关Java中已检查和未检查的异常的文章,并找到此文章/链接:https : //projectlombok.org/disableCheckedExceptions.html 根据这篇文章,这只是为javac开发的黑客。 考虑下面的代码片段: 在这里我不得不写, 因为我试图打开一个文件。在这里,“ throws”子句是必须的。没有它,我会得到一个错误。如果我确定要打开的文件

  • 问题内容: 谁能告诉我第一和第二代码之间的区别是什么?MaxPQ代表优先级队列,它是可以相互比较的“关键”对象的集合。 代码1: 代码2: 第二个代码没有编译,但是对我来说不直观,为什么在使用泛型时为什么需要扩展而不是实现接口。 问题答案: 区别非常简单:第二个代码段不会编译,也永远不会编译。对于泛型,您始终对类和接口都使用。也可以在此处使用关键字,但是它具有不同的语义。