我正在使用Java Swing。我在面板中有一个textarea。我不需要该textArea的水平滚动条,只需要一个垂直滚动条。我禁用了自动滚动条选项,但水平滚动条仍然有效。请帮助我。
答案 0 :(得分:9)
ta.setLineWrap(true)
设置的换行策略 文字区域。如果设置为true则为行 如果它们太长就会被包裹起来 适合分配的宽度。如果 设置为false,行总是如此 展开
答案 1 :(得分:1)
当您将文本区域设置得太小时,滚动条会进入文本区域。这是因为netbeans文本区域中的默认列数字为 20 。
如果您不想显示滚动条,请使用textarea属性并根据您的尺寸更改列号(例如10)。
滚动条不会显示。
答案 2 :(得分:0)
两个例子,换行方法和滚动窗格方法:
public class Test {
public static void main(String[] args) {
// example text
String rep = "The quick brown fox jumps over the lazy dog.";
String all = rep;
for(int i = 0; i < 100; i++)
all += "\n" + rep;
// create the line wrap example
JTextArea first = new JTextArea(all);
first.setLineWrap(true);
// create the scroll pane example
JScrollPane second =
new JScrollPane(new JTextArea(all),
JScrollPane.VERTICAL_SCROLLBAR_ALWAYS,
JScrollPane.HORIZONTAL_SCROLLBAR_NEVER);
// lay it out
JFrame f = new JFrame("Test");
f.setLayout(new GridLayout(1,2));
f.add(first);
f.add(second);
f.setSize(400, 300);
f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
f.setVisible(true);
}
}
答案 3 :(得分:0)
JTextPane没有启用或禁用换行的方法,最好的选择是:
private JTextPane noWrapTextPane = new JTextPane() {
@Override
public boolean getScrollableTracksViewportWidth() {
return getUI().getPreferredSize(this).width
<= getParent().getSize().width;
}
};