2013-10-22 79 views
0

如何添加jpanel並在jtabbedpane選項卡中傳遞一些約束。傳遞面板約束

addTab("name",null,here to pass panel but can't pass constraints, "tooltip"); 

更多的闡述...

當添加在標籤一個JPanel在面板中的內容延伸遍佈所述框架,所以決定來設置幀的GridBagLayout,但通常所述添加標籤時必須通過面板作爲參數之一,不允許有限制!我的問題是,如何在標籤中添加面板以精確地告訴框架放置面板的位置時,如何添加約束條件。

+2

你能詳細說明你想做什麼嗎? – Reimeus

回答

0

簡短的回答是,你不能,至少不能用該版本的addTab方法。使用特定的addTab方法添加到JTabbedPane的任何內容將在選擇其關聯選項卡時獲得所有可用的屏幕空間。

這聽起來像是你想要將多個Component放在同一個標​​籤中,或者在該標籤中改變組件的調整行爲。如果是這種情況,則應首先使用panel.add(Component component,Object constraints)方法將想要顯示的任何組件添加到JPanel的實例中,然後將該面板添加到JTabbedPane

另一種選擇是做這樣的事情:

JTabbedPane tabs = ... 

int index = ... //whatever index you're currently at 
Object constraints = ...//these are your constraints 
JPanel panel = ...//this is the panel you want constraints for 
panel.setName("name"); //will be used as the title when added to tabs in next line 
tabs.add(panel, constraints, index); 
tabs.setToolTipTextAt(index, "this is a tooltip for 'panel'"); 

絕對不是吸引人的一行代碼會是這樣,但仍然能夠完成任務。

+0

根據我通過的約束,它仍然不會將面板放置在框架中! –