Java如何在文本组件的一侧显示行号

时间:2015-03-14 18:47:36

标签: java jtextarea line-numbers rights

我想在文本组件中显示行号。我找到了这个链接 https://tips4java.wordpress.com/2009/05/23/text-component-line-number/ 它奏效了。但我想在textarea的右侧显示行号。我该怎么做。谢谢!

1 个答案:

答案 0 :(得分:2)

TextLineNumber是一个Swing组件。如何在滚动窗格中显示多个组件?您将组件添加到面板,然后将面板添加到滚动窗格的视口。一种方法可能是使用带有BorderLayout的面板:

JPanel panel = new JPanel( new BorderLayout() );
panel.add(textArea, BorderLayout.CENTER);
TextLineNumber lineNumber = new TextLineNumber(textArea, 3);
panel.add(lineNumber, BorderLayout.EAST);
JScrollPane scrollPane = new JScrollPane( panel );

或者您可以使用现有代码并更改滚动窗格的方向:

scrollPane.setComponentOrientation(ComponentOrientation.RIGHT_TO_LEFT);

行号将在右侧,但滚动条现在位于左侧。