Как переключить вкладки в jTabbedPane, нажав кнопку?
у меня есть два JTabbedPanes, JTabbedPane1 & 2 Как я могу нажать кнопку в JTabbedPane2, чтобы показать JTabbedPane1 ?
вот код для JTabbedPane:
public class TabbedPane extends JFrame {
public TabbedPane() {
setTitle("Tabbed Pane");
setSize(300,300);
JTabbedPane jtp = new JTabbedPane();
getContentPane().add(jtp);
JPanel1 jp1 = new JPanel1();//This will create the first tab
JPanel jp2 = new JPanel2();//This will create the second tab
//add panel .........
//example usage
public static void main (String []args){
TabbedPane tab = new TabbedPane();
}
}
вот класс JPane1:
... JLabel label1 = new JLabel();
label1.setText("This is Tab 1");
jp1.add(label1);
и класс Jpane2 с кнопкой на int
тест jbutton с = новый jbutton с("пресс"); файлы jp2.add (test);
ButtonHandler phandler = new ButtonHandler();
test.addActionListener(phandler);
setVisible(true);
} так что проблема здесь в ActionListener кнопки на Jpanel2
class ButtonHandler implements ActionListener{
public void actionPerformed(ActionEvent e){
// what i do now ? to call jpanel 1 show ![alt text][1]
}
}
5 ответов
Если вы сделаете панель с вкладками доступной для ButtonHandler, вы можете сделать это:
class ButtonHandler implements ActionListener{
public void actionPerformed(ActionEvent e){
jtp.setSelectedIndex(0);
}
}
вы можете сделать это, сделав JTP (в идеале с лучшим именем) частным атрибутом с методом getter или его можно передать в качестве аргумента конструктора ButtonHandler.
вы должны использовать метод JTabbedPane.setSelectedIndex(int index)
с индексом вкладки, которую вы хотите.
очень просто: используйте код ниже:
JTabbedpane.setSelectedIndex();
Как вас зовут панель J замените ее на вышеуказанную панель JTabbedpane, и, например, вы хотите выбрать первые вкладки, просто поместите 0 в скобку, и если вы хотите выбрать вторую вкладку, то поместите 1 в скобку, например: моя панель с вкладками J называется jtabbedpanel, и я хочу первую вкладку, тогда строка будет выглядеть как:
jtabbedpanel.setSelectedIndex(0);
надеюсь, что это помогает!!