我正在使用Java Swing。我在一个面板中有一个textarea。我不需要该textArea的水平滚动条,只需要一个垂直滚动条。我禁用了自动滚动条选项,但水平滚动条仍在工作。请帮助我在thz。删除textarea的水平滚动条
2
A
回答
9
ta.setLineWrap(true)
设置 文本区的换行策略。如果设置为true,那么行 将被包装,如果它们太长 以适合分配的宽度。如果 设置为false,该线将永远是 展开
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);
}
}
0
的JTextPane没有方法来启用或禁用线包装,最好的选择是:
private JTextPane noWrapTextPane = new JTextPane() {
@Override
public boolean getScrollableTracksViewportWidth() {
return getUI().getPreferredSize(this).width
<= getParent().getSize().width;
}
};
1
当您的文本区域太小时,滚动条进入文本区域。这是因为您在netbeans文本区域中的默认列数字是。
如果您不想显示滚动条,请取textarea属性并根据您的大小(例如10)将列号更改为一个值。
而滚动条将不会显示。
其工作.. 非常感谢Wajdy Essam .. – charan 2010-06-07 08:48:08