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

在JOptionPane confirmDialog之后的画布右侧和底部的白条?

仲柏
2023-03-14

所以,伙计们,使用joptionpane询问用户应用程序是否应该更新,然后我在画布的底部和右侧得到这些白条。试着移除autoupdate的东西,效果很好。这是我的代码

GameUtils.init();
String version = AutoUpdate.checkForUpdates();
if (Double.parseDouble(version) > AutoUpdate.VERSION) {
    AutoUpdate.update(version);            
    JFrame frame = null;

    try
    {
        frame = new JFrame(GameUtils.data.getString("title"));
    } catch (JSONException e)
    {
        e.printStackTrace();
    }

    frame.getContentPane().setPreferredSize(new Dimension(1000, 500));
    frame.setDefaultCloseOperation(JFrame.DO_NOTHING_ON_CLOSE);
    frame.setResizable(false);
    frame.pack();
    frame.setLocationRelativeTo(null);
    GameUtils.instance = new Game(frame);

    frame.addWindowListener(new WindowListener() {
        @Override
        public void windowOpened(WindowEvent e) {

        }

        @Override
        public void windowClosing(WindowEvent e) {
            GameUtils.instance.stop();
            System.exit(0);
        }

        @Override
        public void windowClosed(WindowEvent e) {


        }

        @Override
        public void windowIconified(WindowEvent e) {

        }

        @Override
        public void windowDeiconified(WindowEvent e) {

        }

        @Override
        public void windowActivated(WindowEvent e) {

        }

        @Override
        public void windowDeactivated(WindowEvent e) {

        }
    });
    frame.setVisible(true);
    GameUtils.instance.start();
}

共有1个答案

鲁炳
2023-03-14

当我在JFrame中使用setResizable(false)和pack()方法时,您也注意到了同样的问题。在这里你可以找到一个描述问题的答案,但我没有找到一个对我有效的解决方案。

在我的应用程序中,如果需要,我会使用一种“技巧”:检查contentPane首选宽度是否等于有效宽度,如果不是,我会回忆pack()方法。

类似于:

for(int i=0;i<5 && contentPane.getPreferredSize().width!=contentPane.getSize().width;i++) frame.pack();
 类似资料:
  • 我想在布局的右侧和底部添加一个光影。我尝试使用,但它在布局的所有四面都添加了一个厚厚的阴影。我需要创建和设置什么绘图器作为背景?

  • 这里有一个关于使用方法关闭一组轴给定侧的刻度的问题。我想更改和属性在默认情况下关闭在我的,但我不知道如何做到这一点,作为文件的刻度部分处理在和方面的东西。我错过了什么?

  • 问题内容: 情况1: 我想在默认WordPress主题的标题中的照片上方放置徽标徽标 我的解决方案:在照片前添加徽标,然后在其上 进行 设置, 而无需 设置任何属性: HTML: CSS: 案例2: 另一个示例是水平多级菜单,其宽度为100%,并带有布局,但不支持 它适用于IE6-7,Firefox1.5,不适用于Firefox 0.8等。 您认为这是一个很好的解决方案,还是非标准的破解程序,可以

  • 问题内容: 我正在使用此答案在div中滚动画布。我也隐藏了滚动条。问题在于它似乎滚动得太远,在这种情况下,如果向下滚动,您会看到画布所在的div的红色。 我尝试过弄乱填充和边距以及不同的大小,但是没有运气。 我如何才能使其仅滚动到画布的末尾,而不在下面显示任何容器div? 谢谢! 问题答案: 将画布作为元素。默认情况下,canvas是一个内联元素,其行为与; 相似。因此,由于垂直对齐,您将出现空白

  • 我正在使用Javax swing,无法摆脱JFrame底部的这个微小的白色边框。我的JFrame结构化的方式是,我在JPanel中添加了一组组件(例如,按钮、文本字段、标签),然后再将这些组件添加到框架中。我尝试将面板的首选大小设置为所需的尺寸,然后在JFrame上调用pack(),但没有用。提前谢谢你。

  • 我在试着用画布画一个网格。逻辑相当简单:对于网格中的每个节点,我使用其左上角和右下角绘制一个矩形[代码如下]。 我没有做任何奇怪的事情,只是根窗口上的一个简单画布。