#swing #netbeans #jtabbedpane
#swing #netbeans #jtabbedpane
Вопрос:
я поместил jpanel на вкладку Jtabbedpane, которая находится слева, и при нажатии на вкладку я хочу отображать метки и текстовые поля в рабочей области панели вкладок, пожалуйста, обратите внимание.
Комментарии:
1. если какой-либо данный ответ решает вашу проблему, пожалуйста, примите один из них. Помните, что нет смысла оставлять вопрос открытым, если он решен. Все хорошо
Ответ №1:
Когда вы говорите «рабочая область панели вкладок», я думаю, вы имеете в виду свою JPanel?
Вы должны прикрепить JLabels и JTextFields к JPanel с помощью JPanel.add(), прежде чем добавлять JPanel в JTabbedPane.
Комментарии:
1. Если этот ответ решил проблему, не забудьте пометить его как правильный (нажав «галочку» рядом с сообщением.
Ответ №2:
Я думаю, вам следует поступить точно так, как говорит @7SpecialGems ( 1 за это). Вот пример, показывающий, как именно это может выглядеть в коде.
import java.awt.Color;
import java.awt.HeadlessException;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JTabbedPane;
import javax.swing.JTextField;
import javax.swing.SwingUtilities;
public class JTabbedPaneSample
{
public static void main(String[] args)
{
SwingUtilities.invokeLater(new Runnable() {
@Override
public void run()
{
createGUI();
}
});
}
private static void createGUI() throws HeadlessException
{
JPanel oi1 = new JPanel();
oi1.setBackground(Color.RED);
oi1.add(new JLabel("Label 1"));
JPanel oi2 = new JPanel();
oi2.setBackground(Color.PINK);
oi2.add(new JLabel("Label 2"));
oi2.add(new JTextField("TextField 1"));
JTabbedPane tp = new JTabbedPane();
tp.addTab("Oi1", oi1);
tp.addTab("Oi2", oi2);
JPanel contentPane = new JPanel();
contentPane.add(tp);
JFrame f = new JFrame();
f.setContentPane(contentPane);
f.setSize(800, 600);
f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
f.setVisible(true);
}
}
Удачи, Боро.