我想得到的效果就像JTabbedPane逆时针旋转90度(只有标签而不是标签内的内容)。在Java中实现它的最佳方法是什么?
答案 0 :(得分:5)
您可以在构造函数中指定展示位置:
http://download.oracle.com/javase/6/docs/api/javax/swing/JTabbedPane.html#JTabbedPane%28int%29
或在二传手中:
http://download.oracle.com/javase/6/docs/api/javax/swing/JTabbedPane.html#setTabPlacement%28int%29
答案 1 :(得分:5)
在此解决方案中:
http://oreilly.com/pub/a/mac/2002/03/22/vertical_text.html
文本是垂直绘制的,并在选项卡上作为图标尝试。这样您就不必修改JTabbedPane,只需在选项卡中使用自定义图标。
当然,您还必须将标签位置指定为左侧。
答案 2 :(得分:4)
作为替代方案,请在orientation
,VERTICAL
或BorderLayout
中将EAST
WEST
设为Icon
时考虑JToolBar
。按钮{{1}}中的rotate text非常简单。
答案 3 :(得分:3)
您可以尝试setTabPlacement(SwingConstants.LEFT)
或this component
答案 4 :(得分:0)
您可以尝试扩展tabpane类,在重载的paint方法中,获取图形对象,比如说g2d
是重载的paint方法的参数:
super(g2d.rotate(Pi/2));
作为首发