在jtextfield中显示文本需要太长时间

时间:2015-04-02 12:39:36

标签: java netbeans jtextfield filechooser

我真的很感谢你的帮助; 我正在使用java(netbeans ide),我正在使用filechooser,当我选择一个目录时,我需要在jtextfield上显示它的路径。但是,在程序结束之前没有任何内容出现(直到目录的所有文件都被解析和处理),我希望它一出现就会出现。 请帮帮我,这是我的代码:

    JFileChooser fch = new JFileChooser("C:\\");
    fch.addChoosableFileFilter(filter);

    fch.setFileSelectionMode(JFileChooser.DIRECTORIES_ONLY);
    int ret = fch.showOpenDialog(null); 
    int apr=0;
    if (ret==JFileChooser.APPROVE_OPTION)
    {
        apr=1;
        jTextField1.setText(fch.getSelectedFile().toString());
    }
    else jTextField1.setText("Nothing clicked!!!");
.......... the rest of the code .........

当我没有点击msg出现时,但是当我这样做时,路径将不会在程序完成后才会显示

1 个答案:

答案 0 :(得分:0)

JFileChooser...的代码可能驻留在ActionListener中。这是在唯一的事件处理线程上处理的。所以做一个invokeLater

@Override
public void actionPerformed(ActionEvent event) {
    ...

    EventQueue.invokeLater(new Runnable() { // Added
        ... rest of the code
    }); // Added
}

在这里,我想"其余代码"可能会导致延迟,但您可能会尝试不同的方式。