2013-07-30 30 views
1

我正在構建動態JDialogs。我有一些JPanels,當你選擇一個菜單選項,我創建了一個模態的JDialog,添加一個JPanel並顯示:在JDialog中的JPanel周圍添加空間?

JDialog dlg = new JDialog(this, title, true); 
dlg.getContentPane().add(panel); 
dlg.pack(); 
dlg.setLocationRelativeTo(null); 
dlg.setVisible(true); 

我的應用程序運作良好,但存在的JDialog邊框和添加面板之間沒有空格,它看起來非常「充分/拉伸」(我很抱歉,我不知道該怎麼說)。也許問題在於我打電話給JDialog.pack(),但是在運行時我不知道面板的大小,所以我創建了沒有尺寸的JDialog,添加內容後我打包了它。

而我的問題是:我能做些什麼來在面板周圍增加一些空間?

一個可行的辦法是在每一側增加一個BorderLayout的,把面板的中心,4個固定尺寸面板......但是,這似乎是一個醜陋的黑客...

+3

[出現一個通配的URL!](http://stackoverflow.com/questions/5328405/jpanel-padding-in-java) – 2013-07-30 21:40:11

+2

對於更稠密的空間問題的一般解決方案:http://stackoverflow.com/問題/ 17874717 /提供白色空間-IN-A-Swing的GUI – kiheru

回答

5

只需add an empty border到面板:

panel.setBorder(BorderFactory.createEmptyBorder(10, 10, 10, 10));