1
我使用的是Vista,我在Win XP上運行的舊Java應用程序有薄邊框,大約2像素厚,但現在在Vista上,邊框以粗線劃破,像素厚,我可以在Java中指定我的JFrame邊框應該是多厚嗎?如何調整Java中的JFrame邊框厚度
我使用的是Vista,我在Win XP上運行的舊Java應用程序有薄邊框,大約2像素厚,但現在在Vista上,邊框以粗線劃破,像素厚,我可以在Java中指定我的JFrame邊框應該是多厚嗎?如何調整Java中的JFrame邊框厚度
默認邊框由本地窗口系統處理。但是在JFrame API中有一個方法setDefaultLookAndFeelDecorated(boolean)
。它說,如果當前的外觀和感覺支持它,如果設置爲真和,它將使用外觀和感覺來繪製邊框,標題和按鈕。我從未嘗試過這種方式,因爲我不知道哪種外觀和感覺支持裝飾。第一件事就是找到一個可以執行的操作,然後通過UIManager
或命令行-Ddefault.laf
參數進行設置,然後通過JFrame方法打開外觀和裝飾。
如果你使用這個選項,你可能會看到非標準的窗口裝飾。鑑於Vista的眼睛糖果(懸停在按鈕和半透明標題欄上的光暈),你確定要這樣做嗎?
另一種選擇是使用JFrame.setUndecorated(boolean)
方法並自己處理邊框,標題欄等的渲染,但這可能更困難。
@Frank。我之前刪除了我給出的答案,因爲正如你指出的那樣並沒有幫助。我會繼續尋找其他解決方案。 – 2009-12-04 21:12:00