java中修改了变量的值怎么能让变量刷新呢?repaint函数不管用,我还写了一个测试程序,也不管用
importjavax.swing.*;importjava.awt.*;importjava.awt.event.*;publicclassTabbedPaneDemo...
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
public class TabbedPaneDemo extends JFrame {
public static void main(String[] args) {
JFrame aFrame = new JFrame();
aFrame.setSize(1000, 500);
Container container = aFrame.getContentPane();
container.setLayout(new FlowLayout());
String string = "ssa";
final JLabel aJLabel = new JLabel(string);
container.add(aJLabel);
JButton aJButton = new JButton("Refresh");
aJButton.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent arg0) {
aJLabel.repaint();
}
});
container.add(aJButton);
string = "aaa";
aFrame.setVisible(true);
}
}
发上来的是那个测试程序。。 展开
import java.awt.*;
import java.awt.event.*;
public class TabbedPaneDemo extends JFrame {
public static void main(String[] args) {
JFrame aFrame = new JFrame();
aFrame.setSize(1000, 500);
Container container = aFrame.getContentPane();
container.setLayout(new FlowLayout());
String string = "ssa";
final JLabel aJLabel = new JLabel(string);
container.add(aJLabel);
JButton aJButton = new JButton("Refresh");
aJButton.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent arg0) {
aJLabel.repaint();
}
});
container.add(aJButton);
string = "aaa";
aFrame.setVisible(true);
}
}
发上来的是那个测试程序。。 展开
4个回答
展开全部
JFrame有个方法叫rep开头的方法,意思是重新绘制 调用他应该没问题,不过哥们,在真正的企业做swing开发,这个几个东西用一个变量,是用beansBinding实现的 将变量绑定在一起 改变一个就全部改变,好比文本框的值 一般是直接去取值,但是这样没有打到MVC的效果,一般会建立一个实体类 属性对应文本框绑定 这样在操作的时候 只是管理对象 没不用去考虑界面,达到MVC的效果
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
定义一个静态的变量,改变了就自动更新了
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你改变string有个P用。。。
你好好去看看String的用法
你好好去看看String的用法
追问
那怎么让界面上的更新啊。。初学者求指导啊
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
static String string = "ssa"
追问
不管用啊
追答
public void actionPerformed(ActionEvent arg0) {
aJLabel.setText(string);
}
这个方法可以这么写,不过String要声明在main方法外面
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询