我有一个选项卡式窗格,我想调整选项卡的大小......不是整个选项卡式窗格,也不是添加到它的面板。但标签本身......更清楚我想要的是......
改变显示tab1和tab2的大小........我该怎么做....... ??
答案 0 :(得分:5)
在 calculateTabWidth
上覆盖BasicTabbedPaneUI
,如下所示:
public static void main(String[] args) throws Exception {
JTabbedPane tabs = new JTabbedPane(JTabbedPane.LEFT);
tabs.setUI(new BasicTabbedPaneUI() {
@Override
protected int calculateTabWidth(
int tabPlacement, int tabIndex, FontMetrics metrics) {
return 200; // the width of the tab
}
});
tabs.add("Tab 1", new JButton());
tabs.add("Tab 2", new JButton());
JFrame frame = new JFrame("Test");
frame.add(tabs);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setSize(400, 300);
frame.setVisible(true);
}
答案 1 :(得分:1)
标签本身的首选大小由UI委托的嵌套类TabbedPaneLayout
决定,您可以在其中覆盖preferredTabAreaWidth()
。