0

我正在开发一个以JFrame开头的 Swing 应用程序,但所有其他框架都包含为JInternalFrames,当我将它安装在不同的计算机中时,我面临一些严重的屏幕尺寸问题,我使用以下方法来设置 JFrame 完整屏幕

    Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();
    setBounds(0, 0, screenSize.width, screenSize.height);
    JFrame.setExtendedState(JFrame.MAXIMIZED_BOTH);

但我观察到没有区别。我还想用屏幕大小调整 JInternalFrames。如果您有任何建议或解决方案,请帮助

4

1 回答 1

3

您应该像这样设置框架扩展状态:

frame.setExtendedState(frame.getExtendedState() | JFrame.MAXIMIZED_BOTH);

您将需要一个组件侦听器来侦听框架扩展以适应屏幕并调整大小更改。

    frame.addComponentListener(new ComponentAdapter() {
        @Override
        public void componentResized(ComponentEvent event) {
            Dimension d = frame.getContentPane().getSize();
            // code to save frame size or calculate internal frame sizes
            frame.validate();
        }
    });
于 2012-09-20T15:42:32.460 回答