我有两个 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);
和 int 上带有按钮的 Jpane2 类
JButton 测试 = new JButton(“按下”); jp2.add(测试);
ButtonHandler phandler = new ButtonHandler();
test.addActionListener(phandler);
setVisible(true);
所以问题出在 Jpanel2 上按钮的 ActionListener 中
class ButtonHandler implements ActionListener{
public void actionPerformed(ActionEvent e){
// what i do now ? to call jpanel 1 show ![alt text][1]
}
}
原文由 tiendv 发布,翻译遵循 CC BY-SA 4.0 许可协议
如果您使 ButtonHandler 可以访问选项卡式窗格,您可以这样做:
您可以通过使用 getter 方法使 jtp(最好使用更好的名称)成为私有属性来实现此目的,或者可以将其作为构造函数参数传递给 ButtonHandler。