如何在JTextField标签上连续引发闪烁?

时间:2010-10-29 22:09:04

标签: java jtextfield

小背景: 我有一个叫做阅读的JTextField。它位于JFrame面板上。

reading = new JTextField("waiting for entry");

我要做的是将JTextField修改为创建闪烁效果的位置。出现,然后消失。我想要提醒用户它需要注意。

有没有一种方法,我眨眼间,它有时是一个空白的字符串,有时显示'等待进入':

reading.setText("           ");

reading.setText("Waiting for entry");

有什么建议吗?

在同一课程中我有:

    public void test(){
    int delay = 300; //milliseconds
    ActionListener taskPerformer = new ActionListener() {
   public void actionPerformed(ActionEvent evt) {
        reading.setVisible(!reading.isVisible()); } };
    Timer ok = new Timer(delay, taskPerformer);
    ok.start();

让我在阅读时告诉你我的actionListener获取值:

public class MyChangeAction implements ChangeListener{
    public  void stateChanged(ChangeEvent ce){
      int value_MAP = slider.getValue();
      String str = Integer.toString(value_MAP);
      reading.setVisible(true); // I just added this 
      reading.setText("     MAP "+ str+" mm Hg ");
}}

那么我在哪里输入ok.stop();或者ok.cancel();

1 个答案:

答案 0 :(得分:2)

您可以使用Timer并拥有

private class BlinkTask extends TimerTask
{
    public void run()
    {
        reading.setVisible(!reading.isVisible());
    }
}

注册每隔一秒左右运行。
一些示例:link