我已经有了 JTabbedPane tb,并且在其中添加了 5 个 JPanel,如下面的代码所示。这 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.
});
最佳答案
How can I call that function whenever I switch to corresponding tab?
您可以将 ChangeListener
添加到 JTabbedPane。
每次选择新选项卡时都会生成一个事件。然后,您可以获取当前选项卡上的面板并调用该面板的 refreshTable()
方法。
您可以阅读 How to Write a ChangeListener 上的 Swing 教程中的部分。有关监听器如何工作的简单示例。
关于java - 如何在切换相应选项卡时从 JTabbedPane 调用 JPanel 的函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54171474/