【发布时间】:2018-01-16 12:18:39
【问题描述】:
如何移动JPanel 的可见部分?我的意思是我有一组可以动态创建和关闭的选项卡(类似于浏览器选项卡),并且在某些时候它们可能太多而不可见,所以我想添加按钮来左右移动视图.我曾想过用setHorizontalScrollBarPolicy=HORIZONTAL_SCROLLBAR_AS_NEEDED 添加JScrollPane,但结果非常难看……滚动。如何只创建按钮来操作面板的可见部分?
负责标签的代码大致如下:
private JPanel tabsPane;
private JComponent createItemsPane() {
tabsPane = new JPanel();
tabsPane.setOpaque(false);
tabsPane.setLayout(new BoxLayout(tabsPane, BoxLayout.X_AXIS));
return tabsPane;
}
public void addTab(TabCaption item) {
tabsPane.add(item);
}
或者,我想移动更改可见部分,以便始终显示选定的选项卡...
【问题讨论】:
-
你知道
JTabbedPane吗? (但不确定如何处理“溢出”标签) -
我在现有项目中使用了其他一些实现,所以它可能太冒险了...我想过用
JScrollPane包装它,但滚动条看起来很丑。 -
刚刚检查:
JTabbedPane将“堆叠”选项卡,即如果它们不适合一行,则创建多行选项卡。 -
"..但是滚动条看起来很丑。" 使用哪个 PLAF?我不喜欢 Metal 有很多原因,一般设置 System PLAF。
-
@AndrewThompson 我不认为这是滚动条的外观,而是标签栏中有一个滚动条根本这一事实很难看。