InternalFrame上的组件问题

时间:2014-12-28 18:26:11

标签: java swing jinternalframe

我目前正在使用internalFrame创建GUI。这就是我的代码的样子:

import javax.swing.*;

public class GUI extends JFrame {

private JDesktopPane desktop;
private JMenuBar menuBar;
private JMenu startMenu;
private JMenuItem travelInfo;
private JButton updateData;

public GUI()
{
    desktop = new JDesktopPane();
    updateData = new JButton("Update");
    createFrame();
    setContentPane(desktop);
    setJMenuBar(buildMenu());
}

private JMenuBar buildMenu()
{
    menuBar = new JMenuBar();

    startMenu = new JMenu("Start");
    menuBar.add(startMenu);

    travelInfo = new JMenuItem("TravelInfo");
    startMenu.add(travelInfo);

    return menuBar;
}

protected void createFrame()
{
    NewFrame frame = new NewFrame();
    frame.add(updateData);
    frame.setVisible(true);
    desktop.add(frame);
    }
}

然后是我的另一堂课:

import javax.swing.JInternalFrame;

class NewFrame extends JInternalFrame {

    public NewFrame() {
        setSize(800, 600);
    }
}

我的主要人物:

import javax.swing.JFrame;

public class Main {

public static void main(String[] args) {
    javax.swing.SwingUtilities.invokeLater(new Runnable() {
        public void run() {
            createAndShowGUI();
        }
    });
}

private static void createAndShowGUI()
{
    GUI frame = new GUI();
    frame.setSize(800, 600);
    frame.setResizable(false);
    frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    frame.setVisible(true);
}
}

我想要做的是使我创建的internalFrame无法使用,以便它始终与JDesktopPane一样大,这是不可简化的。然后我将添加不同的菜单选项,以便我可以在不同的帧之间切换,所以它看起来像一个网站。我也想知道如何在internalFrame中更改按钮的大小。我尝试为internalFrame设置frame.setResizable(false);,但它没有用。在按钮上设置大小也没有成功......有人知道如何解决这个问题?

0 个答案:

没有答案