我是java的新手,我正在尝试创建一个GUI客户端,只要按下一个按钮,就会在框架中添加一个新的面板。在这种情况下,当按下一个名为createMessage的按钮时,下面的面板将被添加到主框架中。
JPanel createMessagePanel = new JPanel();
createMessagePanel.setLayout(new GridLayout(8, 0, 5, 10));
messageText = new JTextArea(5, 20);
sendTo = new JTextField("Recipient"); //Declared Global
JLabel createMessagePrompt = new JLabel("CREATE MESSAGE");
JLabel userPrompt = new JLabel("Send to:");
JLabel messagePrompt = new JLabel("Message:");
sendButton = new JButton("Send!");
createAMessageButton.addActionListener(this);
createMessagePanel.add(createMessagePrompt);
createMessagePanel.add(userPrompt);
createMessagePanel.add(sendTo);
createMessagePanel.add(messagePrompt);
createMessagePanel.add(new JScrollPane(messageText));
createMessagePanel.add(sendButton);
add(createMessagePanel, BorderLayout.CENTER);
这可悲的是不行,我被告知这可能是因为框架需要知道在运行时添加到框架的组件。如何在按下按钮时实现此效果,然后包含其他组件的不同面板将显示在BorderLayout.CENTER位置。
提前致谢。