【发布时间】:2010-08-23 13:48:39
【问题描述】:
我有 2 个JTabbedPane。我无法刷新数据。请帮忙,这是我的代码:
窗格1:
//.. some codes...
// This is the ButtonListener
private class ButtonListener implements ActionListener
{
public void actionPerformed (ActionEvent event)
{
userInput = tf.getText(); // tf is JTextField
//System.out.println("the input is "+ finalInput);
pane2.updateData(userInput);
}
}
窗格2:
public void updateData(String s){
System.out.println("Update data function is called");
labelUser.setFont(new Font("Arial", Font.BOLD, 30));
labelUser.setText("Updated text here " + s);
}
这是我的主要课程:
import java.awt.*;
import javax.swing.*;
public class Main {
public static Pane2 p2 = new Pane2();
public static void main(String[] args) {
JFrame f= new JFrame ("My Frame");
f.setDefaultCloseOperation (JFrame .EXIT_ON_CLOSE);
JTabbedPane tp = new JTabbedPane();
p2 = new Pane2();
tp.addTab("Pane1", new PaneFirst(p2));
tp.addTab("Pane2", new PaneSecond());
f.add(tp);
f.pack();
f.setVisible(true);
}
}
labelUser 永远不会更新,但我跟踪 updateData 函数,它被调用了。为什么labelUser中的文字没有更新?
编辑:
“labelUser”来自pane2.java类。
【问题讨论】:
-
请正确缩进代码(使用四个空格告诉网站“这是代码”)!
-
@Aaron,你为什么不能这样做?
-
我看不到 labelUser 来自哪里。小部件是否可见?
-
抱歉,编辑了我的问题。请看一下
-
您必须包含所有相关代码:Pane2、PaneFirst、PaneSecond 等。这里没有通灵者可以在不查看代码的情况下调试您的代码。
标签: java swing jlabel jtabbedpane