怎样使jlabel上的数字可变

 我来答
雪飞潇潇
2017-10-03 · TA获得超过6274个赞
知道大有可为答主
回答量:1968
采纳率:91%
帮助的人:861万
展开全部

答: 可以使用线程 , 修改JLabel的文字. 也可以触发事件,比如点击按钮等, 去修改JLabel的文字

下面制作1个简单的时间显示 ,每1秒钟更新1次时间显示, 并且改变文字的颜色

参考代码

import java.awt.*;

import java.awt.event.ActionEvent;

import java.awt.event.ActionListener;

import java.text.SimpleDateFormat;


import javax.swing.*;

public class TextFrame extends JFrame {

String str_time;

JLabel jltime;

final SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");

public TextFrame() {

JLabel jl1 = new JLabel("时间");

jltime= new JLabel("8888-88-88 88:88:88");

jltime.setForeground(Color.BLUE);

add(jl1);

add(jltime);

setLayout(new FlowLayout());

setTitle("标题");

setSize(300, 120);// 窗口大小

setLocationRelativeTo(null);// 窗口居中

setDefaultCloseOperation(EXIT_ON_CLOSE);// 窗口点击关闭时,退出程序

//定时器, 每1000毫秒改变1次文字

Timer timer = new Timer(1000, new ActionListener() {

@Override

public void actionPerformed(ActionEvent e) {

//改变文字标签的文字

jltime.setText(sdf.format(System.currentTimeMillis()));

//随即产生1种颜色

Color c = new Color((int)(Math.random()*256),(int)(Math.random()*256),(int)(Math.random()*256));

//改变标签的颜色

jltime.setForeground(c);

}

});

timer.start();

}

public static void main(String[] args) {

new TextFrame().setVisible(true);

}

}

推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式