0
我有一个在垂直布局中动态分配按钮的JPanel。问题是,当我把这个面板放在JScrollPane中时,scrollPane会出现在我的按钮上方。我不知道为什么会发生这种情况。这里的代码:JPanel在JScrollPane中不可见
public static void GUI()
{
JFrame frame = new JFrame(GAME_TITLE);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setPreferredSize(new Dimension(400,600));
frame.setLayout(new GridLayout(0,1));
Menu theMenu = new Menu();
theMenu.setLayout(new GridLayout(mSize,0));
theMenu.setOpaque(true);
JScrollPane scroll = new JScrollPane(theMenu,JScrollPane.VERTICAL_SCROLLBAR_ALWAYS,JScrollPane.HORIZONTAL_SCROLLBAR_NEVER);
frame.add(scroll);
theMenu.createGameButtons(frame);
frame.pack();
frame.setVisible(true);
}
我已经尝试了很多事情没有成功。另外,我连接到一个窗口的链接出手
该缺陷是在不可见的代码。该错误在'createGameButtons'方法中。在那里,按钮被创建并添加到框架,而不是将它们添加到菜单本身(我猜是'JPanel'的一个子类)。为什么要将框架传递给'createGameButtons()'...... – 2014-12-07 05:32:03
是不是'Menu'类是你的JPanel。 – 2014-12-07 05:32:21
请编辑您的问题,以包含展示您描述的问题的[完整示例](http://stackoverflow.com/help/mcve)。 – trashgod 2014-12-07 05:33:00