1

我想这样做:当主线程运行时,我想在不干扰主线程和冻结摆动组件的情况下执行一系列动作,并且我可以从主线程强制停止执行。其中一个动作可以操纵摆动组件。

一些帮助想象的代码:

public class Test extends JFrame{
    public Test()
    {
        super("Test");
        JButton button = new JButton("Stop!");
        button.addActionListener(new ActionListener()
        {
            @Override
            public void actionPerformed(ActionEvent e)
            {
                //STOP THE EXECUTION
            }
        });
        this.add(button);

        //START OF EXECUTION
            System.out.println("FOO");
            System.out.println("BAR");
            button.setText("Hello");
            System.out.println("THIS");
        //END OF THE EXECUTION

        this.pack();
        this.setVisible(true);
    }
}

我尝试只使用线程,它抛出异常,我忘记了异常是什么,但基本上它说我不能从非 AWT 线程或其他东西操作摆动组件。

之后我尝试同时使用 Thread 和 swingUtilities,但它们在执行完成后执行 swing 组件操作。我该怎么做呢?

4

1 回答 1

2
于 2013-01-18T16:31:07.187 回答