我正在开发一个以 JFrame 开头的Swing应用程序,但所有其他框架都包含在 JInternalFrames 中,当我遇到一些严重的屏幕尺寸问题时在不同的计算机上安装它,我使用以下方法来全屏设置JFrame
Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();
setBounds(0, 0, screenSize.width, screenSize.height);
JFrame.setExtendedState(JFrame.MAXIMIZED_BOTH);
但我发现没有区别。我还想用屏幕大小调整JInternalFrames。如果您有任何建议或解决方案,请帮助
答案 0 :(得分: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();
}
});