gpt4 book ai didi

java - Swing组件在不同电脑上的显示不同

转载 作者:行者123 更新时间:2023-11-30 02:29:10 24 4
gpt4 key购买 nike

我正在尝试使用 java swing 创建一个迷你游戏,但我找不到任何解决方案来解决使用相同代码、应用程序在不同电脑上显示不同的问题。它在 1366x768 分辨率屏幕上显示正常,但在全高清屏幕上拉伸(stretch)。我尝试更改高分辨率屏幕上的分辨率,尝试更改图标/字体大小,但没有成功。我添加了两张屏幕截图,一张是它的外观,另一张是高分辨率屏幕上的。请注意,由于某种原因,高屏幕除了拉伸(stretch) map 外,还放大了 map 顶部的工具栏。

它应该是什么样子: how it suppose to look like

它在高分辨率屏幕上的显示效果: how it looks on high res screens

最佳答案

我猜测您的图 block 占用了 BorderLayout.CENTER 中的 GridLayout,这是 JFrame 的默认布局和位置。 。调整此相关的大小 example查看具有固定尺寸的图 block 的效果,如下图所示。例如,如果您将 setExtendedState() 设置为 MAXIMIZED_BOTH,则可能会发生这种情况。您可以在封闭的 JFrame 上尝试 setResizable(false) 以防止分离。

I have no idea how to make the window get the right shape from the start.

当你 pack()封闭的 JFrame,它“导致此 Window 的大小适合其子组件的首选大小和布局。” example引用从组成图 block 的图标的 SIZE 中获取其初始大小,但您可以覆盖 getPreferredSize()指定不同的结果。

之前:

image not stretched

之后:

image stretched

关于java - Swing组件在不同电脑上的显示不同,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44719507/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com