我的问题是我想为我的项目制作更复杂的(对我而言)图形界面。首先,我使用以下代码使用全屏模式:
public class MainFrame extends JFrame
{
...
private Container container;
private GridBagLayout gbl;
public MainFrame()
{
GraphicsEnvironment env = GraphicsEnvironment.getLocalGraphicsEnvironment();
GraphicsDevice dev = env.getDefaultScreenDevice();
dev.setFullScreenWindow(this);
setLayoutManager();
}
...
}
一切都很好。我要做的下一步是添加两个 JPanel。我想使用的布局管理器是 GridBagLayout。
private void setLayoutManager()
{
container = getContentPane();
gbl = new GridBagLayout();
container.setLayout(gbl);
}
private void addMenu()
{
MenuBar menu = new MenuBar();
GridBagConstraints gbc = new GridBagConstraints();
gbc.fill = GridBagConstraints.BOTH;
gbc.ipady = 0;
gbc.gridx = 0;
gbc.gridy = 0;
gbc.weightx = 1.0;
gbc.weighty = 0.05;
gbl.setConstraints(menu, gbc);
container.add(menu);
}
private void addWorkArea()
{
WorkArea area = new WorkArea();
GridBagConstraints gbc = new GridBagConstraints();
gbc.fill = GridBagConstraints.BOTH;
gbc.gridx = 0;
gbc.gridy = 1;
gbc.weightx = 1.0;
gbc.weighty = 1.0;
gbl.setConstraints(area, gbc);
container.add(area);
}
结果看起来像这样:
这是我的项目:
为什么上面有条?
更重要的是,当我单击并拖动时,所有应用程序都在移动。请帮我。对我来说,填补所有空间摆脱 JFrame 移动很重要。