如何在切换相应选项卡时从JTabbedPane从JPanel调用函数?

时间:2019-01-13 17:39:19

标签: java swing events jpanel jtabbedpane

我已经将JTabbedPane tb添加到其中,并在其中添加了5个JPanels,如下面的代码所示。这5个面板是放在同一包中的单独的Java类。这些类中的每一个都有名为 refreshTable()的函数。每当我切换到相应的选项卡时如何调用该函数?

        JTabbedPane tb=new JTabbedPane();
        tb.add("विक्री",new ReportPanel());
        tb.add("बिल",new BillPanel());
        tb.add("ग्राहक",new CustomerPanel());
        tb.add("वर्तमानपत्र/मासिक",new ProductPanel());
        tb.add("सेटींग्स",new Settings());

        tb.addChangeListener((ChangeEvent e) -> {  
            // Here I want to call function refreshTable() from switched JPanel Class.
    });

1 个答案:

答案 0 :(得分:1)

  

每当我切换到相应的标签页时如何调用该函数?

您可以向JTabbedPane添加ChangeListener

每次选择一个新选项卡时,都会生成一个事件。然后,您可以在当前选项卡上获取该面板,并为该面板调用refreshTable()方法。

您可以阅读How to Write a ChangeListener的Swing教程中的部分,以获取侦听器如何工作的简单示例。

相关问题