java swing的一个程序(可能会用到线程)
我想做一个程序:简单的说明一下就是:jframe上有一个按钮,有一个JLabel。点击按钮,改变JLabel内容,过个2秒,再变回原来的内容。例如:JButtonjb;J...
我想做一个程序:
简单的说明一下就是:jframe上有一个按钮,有一个JLabel。
点击按钮,改变JLabel内容,过个2秒,再变回原来的内容。
例如:
JButton jb;
JLable jl;
jl.setText("aaa");
public void Btn_Click(ActionEvent e){
jl.setText("bbb");
}
过2秒之后再变成aaa大体就是这个意思 展开
简单的说明一下就是:jframe上有一个按钮,有一个JLabel。
点击按钮,改变JLabel内容,过个2秒,再变回原来的内容。
例如:
JButton jb;
JLable jl;
jl.setText("aaa");
public void Btn_Click(ActionEvent e){
jl.setText("bbb");
}
过2秒之后再变成aaa大体就是这个意思 展开
展开全部
import java.awt.GridLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.*;
public class Tests extends JFrame implements ActionListener, Runnable {
private static final long serialVersionUID = 1L;
private JLabel label;
private JButton button;
public Tests() {
label = new JLabel("aaa");
button = new JButton("Click");
getContentPane().add(label);
getContentPane().add(button);
button.addActionListener(this);
setLayout(new GridLayout(1, 2));
setBounds(100, 100, 300, 300);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
@Override
public void actionPerformed(ActionEvent e) {
label.setText("bbb");
Thread thread = new Thread(this);
thread.start();
}
@Override
public void run() {
for (int i = 0; i < 2; i++) {
try {
Thread.sleep(1000);
if (i == 1) {
label.setText("aaa");
}
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
public static void main(String[] args) {
Tests test = new Tests();
test.setVisible(true);
}
}
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.*;
public class Tests extends JFrame implements ActionListener, Runnable {
private static final long serialVersionUID = 1L;
private JLabel label;
private JButton button;
public Tests() {
label = new JLabel("aaa");
button = new JButton("Click");
getContentPane().add(label);
getContentPane().add(button);
button.addActionListener(this);
setLayout(new GridLayout(1, 2));
setBounds(100, 100, 300, 300);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
@Override
public void actionPerformed(ActionEvent e) {
label.setText("bbb");
Thread thread = new Thread(this);
thread.start();
}
@Override
public void run() {
for (int i = 0; i < 2; i++) {
try {
Thread.sleep(1000);
if (i == 1) {
label.setText("aaa");
}
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
public static void main(String[] args) {
Tests test = new Tests();
test.setVisible(true);
}
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询