2011-01-06 35 views
1

JTabbedPane中是有可能在dyanamically在Java jtabedpane翼片的裝載..問題在Java

這意味着我有幀,在這一個選項卡窗格..

的consinting我有10個標籤,並每個選項卡consting另一個tabbedpane,並且每個tabbedpane有4個選項卡,每個選項卡包含按鈕和文本區域......

當我登錄到我的項目時,下一幀需要更多時間才能看到....

這是爲什麼,因爲ih在我的框架AVE更tabbedpanes因此,它需要的時間很多的可見..

我的問題是..

是可以動態加載標籤頁的內容,當我在選項卡窗格中單擊該選項卡.... 。

或者是它可能加載tabbedpanes快速度...... ????????

回答

1

它應該很快加載選項卡窗格。必須花時間的是標籤中的內容。您可以使用與初始構建GUI時相同的方式動態創建選項卡。我的猜測是內容是你真正的問題。取決於您可以在EDT以外的線程上加載一些項目,然後再回來。 (看着SwingWorker)。

1

您可以使用SwingUtilities.invokeLater把你的內心標籤面板的創建之後開始顯示您的選項卡窗格中出現..

  1. 創建外部突出窗格
  2. 創建在所有選項卡存根面板外部窗格 - 這將爲您的選項卡添加佔位符,使其向用戶顯示它們已被創建。
  3. 爲第一個選項卡創建內容。
  4. 迭代選項卡2到n,創建Runnable實例,用於設置選項卡的內容,包括其內部選項卡窗格。使用這些Runnable實例作爲參數SwingUtilities.invokeLater。這將把這些行動放在美國東部時間晚些時候,所以他們將在當前行動完成後執行。
  5. 完成外部選項卡窗格的設置,將其添加到您的JFrame或其他容器並將其設置爲可見。