【发布时间】:2015-11-05 20:05:06
【问题描述】:
每次单击“加载”J 按钮时,我都会尝试更新一个空的 Jlabel。我在 Jbutton 中添加了一个 actionlistener,但由于某种原因,标签不会更新或使用 setText(String) 方法显示任何文本。
JLabel stupidLabel = new JLabel();
stupidLabel.setForeground(SystemColor.infoText);
stupidLabel.setFont(new Font("Arial", Font.PLAIN, 11));
stupidLabel.setBounds(71, 46, 167, 14);
panel.add(stupidLabel);'
JButton load = new JButton("Load");
load.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
stupidLabel.setText("Update please");
}
});
load.setFont(new Font("Arial", Font.PLAIN, 11));
load.setBounds(189, 92, 89, 22);
contentPane.add(load);
好像没用。
似乎是什么问题?有没有办法让标签每秒钟左右自动更新一次,有效地完全消除对按钮的需求?
【问题讨论】:
-
听起来你在隐藏你的变量,但可能使用
null布局并没有帮助。考虑提供一个runnable example 来证明您的问题。这不是代码转储,而是您正在做的事情的一个示例,它突出了您遇到的问题。这将导致更少的混乱和更好的响应 -
new Font("Arial", Font.PLAIN, 11)对于编译时检查和跨平台健壮性,最好是:new Font(Font.SANS_SERIF, Font.PLAIN, 11)
标签: java swing jlabel layout-manager null-layout-manager