首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >JFrame大小,调整大小,全屏

问JFrame大小,调整大小,全屏
EN

Stack Overflow用户
提问于 2015-09-29 20:23:05
回答 1查看 1.6K关注 0票数 0

我的问题有三部分。

  1. 我想知道,如何将JFrame窗口设置为可调整大小,但不能低于最小大小,这样用户就不能使其比最小大小更小。
  2. 我想知道,如何将JFrame窗口设置为可调整大小,但即使用户正在调整其大小,也如何保持高宽比(16:9)。
  3. 我想知道,如何使程序成为真正的全屏后,他点击一个按钮,这样就没有边界和运行像一个游戏或其他(如果有任何具体的问题,我如何才能恢复安全)。

感谢您的帮助和耐心,我的英语不完美,不完善的Java知识。

所提供的答案是有用的,并回答了我的部分问题,但对我来说,大部分仍然是空白的。

守则的部分:

代码语言:javascript
复制
private void createDisplay() {
    GraphicsDevice gd = GraphicsEnvironment.getLocalGraphicsEnvironment().getDefaultScreenDevice();

    frame = new JFrame(title);                                              //setting the title of the window
    frame.setSize(width, height);                                           //setting the width and height of the window
    frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);                   //make sure program closes down properly
    frame.setResizable(true);
    frame.setLocationRelativeTo(null);                                      //the window will apparel on the center
    frame.setVisible(true);
    frame.setIconImage(Assets.ImageMap.get("icon"));

    canvas = new Canvas();
    canvas.setPreferredSize(new Dimension(width, height));
    canvas.setMaximumSize(new Dimension(width, height));
    canvas.setMinimumSize(new Dimension(gd.getDisplayMode().getWidth() / 2, gd.getDisplayMode().getHeight() / 2));
    canvas.setFocusable(false);

    frame.add(canvas);
    frame.pack();                                                           //resize the window a little bit so able to see all of canvas
}
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-09-29 20:32:56

  1. 设置帧的最小大小(setMinimumSize)
  2. 这是更困难的,因为在事后通知您的大小更改,所以您将始终与系统对抗,因为它的变化(然后您遇到问题与谁产生的大小更改事件)。最好将重点放在根据帧内可用空间保持帧内容的比率(VLC就是一个很好的例子)。
  3. 全屏排他模式
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/32853110

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档