我有一個JDialg用於顯示某個任務的進度。要顯示和隱藏對話框我有以下方法,從線程關閉JDialog框
public class ProgressDisplayer extends javax.swing.JDialog {
......
public void s_show() {
this.setTitle("Month End Status");
setModal(true);
setResizable(false);
pack();
this.setLocationRelativeTo(null);
this.setVisible(true);
}
public void s_hide() {
this.dispose();
}
...........
}
當我嘗試從如下線程關閉此的JDialog框,雖然顯示正常但我不能隱藏它,當我打電話pd.s_hide()
方法。
...........
public void run() {
ProgressDisplayer pd = new ProgressDisplayer();
pd.s_show();
Thread.sleep(1000);
pd.s_hide();
}
.............
請幫助我。
*「當......從一個線程..不隱藏。」*您是否確認,當它從線程中調用** not **時它會正確隱藏?看起來像一個'setVisible(false);'不會誤入歧途。 –