的外觀和感覺我使用的是淨豆的形式來創建一個小程序。該applet依賴於JFileChooser。如果我將程序編寫爲應用程序而不是applet,則文件選擇器看起來不同。爲什麼在編寫applet或應用程序時,相同的代碼會生成不同的文件選擇器?另外,如何從applet更改我的文件選擇器的外觀和感覺,以使其看起來像應用程序中的文件選擇器?更改的JFileChooser
申請文件選擇:
Applet的文件選擇:
的外觀和感覺我使用的是淨豆的形式來創建一個小程序。該applet依賴於JFileChooser。如果我將程序編寫爲應用程序而不是applet,則文件選擇器看起來不同。爲什麼在編寫applet或應用程序時,相同的代碼會生成不同的文件選擇器?另外,如何從applet更改我的文件選擇器的外觀和感覺,以使其看起來像應用程序中的文件選擇器?更改的JFileChooser
申請文件選擇:
Applet的文件選擇:
當您在應用程序中調用UIManager.setLookAndFeel(…)
時,現有組件不會自動更新,因爲沒有全部現有組件的全局註冊表。因此,這些組件看起來不同於之後創建的組件。您可以在組件上調用updateUI()
以將其更新爲當前的外觀。還有實用方法SwingUtilities.updateComponentTreeUI(…)
,其將遞歸地在整個組件樹上調用updateUI()
。
但是總體來說,這是更好地設置所需的外觀和儘早的感覺,最好在創建任何組件之前,避免了需要更新現有組件。
你應該能夠做這樣的事情:
SwingUtilities.updateComponentTreeUI(JFileChooser);
你是說這只是文件選擇器,它看起來有什麼不同? – Holger
@Holger這是正確的 – pmaurais
你有UIManager.setLookAndFeel的'調用()'在你的應用程序?如果在UI的某些部分已經創建時發生這種情況,這些部分看起來會與之後創建的部分看起來不同。你可以調用['updateUI()'](http://docs.oracle.com/javase/8/docs/api/javax/swing/JComponent.html#updateUI--)的組件上,以將其更新到當前外觀和感覺。問題是哪部分顯示當前的外觀和感覺,文件選擇器或其他用戶界面... – Holger