java设置RowHeaderView宽度,将textarea作为组件
我试图在一个区域旁边显示行号
以下是代码的用途->
jScrollPane1.setRowHeaderView(jTextArea3);
jTextArea1.getDocument().addDocumentListener(new DocumentListener() {
public String getText() {
int caretPosition = jTextArea1.getDocument().getLength();
Element root = jTextArea1.getDocument().getDefaultRootElement();
text = "1" + System.getProperty("line.separator");
for (int i = 2; i < root.getElementIndex(caretPosition) + 2; i++) {
text += i + System.getProperty("line.separator");
}
return text;
}
@Override
public void changedUpdate(DocumentEvent de) {
jTextArea3.setText(getText());
}
@Override
public void insertUpdate(DocumentEvent de) {
jTextArea3.setText(getText());
}
@Override
public void removeUpdate(DocumentEvent de) {
jTextArea3.setText(getText());
}
});
(其中jTextArea3是显示行号的地方,jTextArea1是输入文本的地方。JScrollpane2包含jTextArea3)
它工作得很好,但在较高的行数下,存在问题->
http://imageshack.com/a/img36/737/yvhk.png(sry还不允许直接上传图像)
需要帮忙吗
PS->;我正在使用NETBeBeS(只是在学习java的中间),并且使用默认的布局(这是软件自动生成的,这也意味着默认布局属性)。p>
共 (0) 个答案