相关疑难解决方法(0)

从ArrayList <List> - Java每X秒更新一次JLabel

我有一个简单的Java程序,它读入一个文本文件,用""(空格)分割,显示第一个单词,等待2秒,显示下一个...等...我想在Spring中执行此操作或一些其他的GUI.

关于如何用spring轻松更新单词的任何建议?迭代我的列表并以某种方式使用setText();

我没有运气.我正在使用这种方法在consol中打印我的单词并将JFrame添加到它...在consol中工作得很好,但是输出了无穷无尽的jframe.我在网上找到了大部分内容.

    private void printWords() {
        for (int i = 0; i < words.size(); i++) {
            //How many words?
            //System.out.print(words.size());
            //print each word on a new line...
            Word w = words.get(i);
            System.out.println(w.name);

            //pause between each word.
            try{
                Thread.sleep(500);
            } 
            catch(InterruptedException e){
                e.printStackTrace();
            }
         JFrame frame = new JFrame("Run Text File"); 
         frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); 
         JLabel textLabel = new JLabel(w.name,SwingConstants.CENTER);
         textLabel.setPreferredSize(new Dimension(300, 100)); 
         frame.getContentPane().add(textLabel, BorderLayout.CENTER);
        //Display the window. frame.setLocationRelativeTo(null); 
         frame.pack(); 
         frame.setVisible(true);
        }
    }
Run Code Online (Sandbox Code Playgroud)

我有一个用JFrame和JLable创建的窗口,但是,我希望静态文本是动态的,而不是加载一个新的弹簧窗口.我想它闪现一个字,消失,闪现一个字消失.

有关如何更新JLabel的任何建议?什么与重绘()?我画了一个空白.

谢谢!

更新: 在下面的亲切的帮助下,我已经让它正确打印到控制台.这是我的打印方法:

private void printWords() {
            final …
Run Code Online (Sandbox Code Playgroud)

java concurrency swing timer freeze

3
推荐指数
2
解决办法
9518
查看次数

标签 统计

concurrency ×1

freeze ×1

java ×1

swing ×1

timer ×1