使用 Scoll_Tab_Layout 设置 JTabbedPane 中可见选项卡的数量?
我正在使用 Swing 开发一个 java 应用程序。 我需要在具有大量选项卡的非常广阔的区域中使用 JTabbedPane
。 我需要使用的 TabLayoutPolicy
是 SCROLL_TAB_LAYOUT
。
默认行为是选项卡填充 JTabbedPane
窗格的整个长度。
我想限制视图中可见选项卡的数量,以便左右箭头按钮始终可见,并且我可以滚动隐藏的选项卡。
我怎样才能做到这一点?
I'm developing a java application using Swing.
I need to use a JTabbedPane
in a very wide area with a huge number of tabs.
The TabLayoutPolicy
I need to use is the SCROLL_TAB_LAYOUT
.
The default behavior is that the tabs fill the JTabbedPane
for the whole length of the pane.
I want to limit the number of visible tabs in the view, so that the left-right arrow buttons are always visible and I can scroll the hidden tabs.
How can I do that?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
这对于用户来说听起来很难使用。作为替代方案,
WEST
1 中的JList
在CardLayout
的不同卡片之间翻转如何?代码>中心1?BorderLayout
。That sounds hard for the user to work with. As an alternative, how about a
JList
in theWEST
1 flipping between different cards of aCardLayout
in theCENTER
1?BorderLayout
.据我所知,这是不可能直接实现的,因为API中的大多数方法都是私有的,不能从外部访问。即使设置固定长度的肮脏黑客(“我的选项卡名称 ”)在屏幕上生成可变长度的像素也会失败,因为屏幕上的字符在像素中没有相同的大小。可能的解决方案包括:
1)覆盖 JTabbedPane 用于设置Tab的标题为固定长度
2) 把JTextField#(int) setEditable(false) 到选项卡标题(需要一些自定义 JTabbedPane)
As far I know, it is not possible directly, because most of methods in API are private and not accesible from outside. Even dirty hacks that set fixed length (" My Tabs Name ") generating variable length of pixels on the screen fail because chars on the screen haven't got same size in the pixels. Possible solutions include:
1) override JTabbedPane for settings Tab's title for fixed length
2) put the JTextField#(int) setEditable(false) to the Tab title (required some of custom JTabbedPane)