2017-05-30 61 views
0

我有一個稱爲screenRole的jinternalframe,該框架包含一些從數據庫加載信息的表,因此需要一段時間才能顯示內部框架,因爲在調用setvisible方法我也調用loadtb(連接到數據庫,並提取數據) 我需要的是先顯示幀,然後加載表。 它目前顯示框架,一旦它從數據庫中提取信息。在加載jtables的數據之前顯示jinternalframe

我嘗試了很多事情來先顯示幀(代碼中的所有//註釋行)無濟於事。

還有其他建議嗎?

RoleEng screenRole;

 screenRole = new RoleEng(); 
     desktop.add(screenRole); 
     screenRole.setVisible(true); 
     //screenRole.show(); 
     // screenRole.setFocusable(true); 
     //desktop.revalidate(); 
     //desktop.repaint(); 
     //JOptionPane.showMessageDialog(null, "Test"); 
     screenRole.loadtb(this.idf,rcode);** 
     //screenRole. (this.idf,rcode); 
+0

到目前爲止唯一的工作是showMessageDialog,但我不想讓MessageDialog在內部框架之前顯示,但至少在加載數據庫中的信息之前顯示它。 – PCA

+1

請勿添加註釋。在問題中發佈所有相關信息,以便在一個地方找到它。 – camickr

回答

2

可以使用SwingWorker加載在一個單獨的Thread數據。然後,當數據加載時,可以使用SwingWorkerdone()方法更新表中的數據。

閱讀關於Worker Threads and SwingWorker的Swing教程中的部分以獲取更多信息和工作示例以幫助您入門。

相關問題