Java JTextArea菜单项的行号
我正在尝试使用Java的AWT和SWING概念开发一个项目 因为我有一个菜单项,名为“Viewline number(即我们为此选择了Java JTextArea菜单项的行号,java,swing,jtextarea,Java,Swing,Jtextarea,我正在尝试使用Java的AWT和SWING概念开发一个项目 因为我有一个菜单项,名为“Viewline number(即我们为此选择了JCheckBox)。当我选中该复选框时,它将在另一个文档中显示行号。但是,我想在同一个文档中显示行号,就像Editplus编辑器一样 这是我的密码 private void ViewLineNumbersActionPerformed(java.awt.event.ActionEvent evt) { lines = new J
JCheckBox
)。当我选中该复选框时,它将在另一个文档中显示行号。但是,我想在同一个文档中显示行号,就像Editplus编辑器一样
这是我的密码
private void ViewLineNumbersActionPerformed(java.awt.event.ActionEvent evt) {
lines = new JTextArea("");
lines.setBackground(Color.LIGHT_GRAY);
lines.setEditable(false);
lines.setSize(10,10);
tx.getDocument().addDocumentListener(new DocumentListener(){
public String getText(){
int caretPosition = tx.getDocument().getLength();
// System.out.println("caretPosition"+ caretPosition);
Element root = tx.getDocument().getDefaultRootElement();
// System.out.println("root"+ root);
String text = "1" + System.getProperty("line.separator");
int c=root.getElementIndex( caretPosition );
// System.out.println(c);
for(int i = 2; i < c + 2; i++){
text += i + System.getProperty("line.separator");
}
return text;
}
@Override
public void `enter code here`changedUpdate(DocumentEvent de) {
lines.setText(getText());
}
@Override
public void insertUpdate(DocumentEvent de) {
lines.setText(getText());
}
@Override
public void removeUpdate(DocumentEvent de) {
lines.setText(getText());
}
});
sp.getViewport().add(tx);
// sp.setViewportView(tx);
sp.setRowHeaderView(lines);
}
private void ViewLineNumbersActionPerformed(java.awt.event.ActionEvent evt){
行=新的JTextArea(“”);
线条。背景(颜色。浅灰色);
行。设置可编辑(false);
行。设置大小(10,10);
tx.getDocument().addDocumentListener(新DocumentListener()){
公共字符串getText(){
int caretPosition=tx.getDocument().getLength();
//System.out.println(“caretPosition”+caretPosition);
元素根=tx.getDocument().getDefaultRootElement();
//System.out.println(“根”+根);
String text=“1”+System.getProperty(“line.separator”);
int c=root.getElementIndex(caretPosition);
//系统输出打印ln(c);
对于(int i=2;i
但是,我想在同一个文档中显示行号,就像Editplus编辑器一样
我非常怀疑行号是否是文件的一部分。它们可能显示为同一组件的一部分,但我确信当您复制/粘贴文本时,不会包含行号
假设我的上述陈述是正确的,您可以尝试使用。由于该组件显示在滚动窗格的行标题中,您应该能够根据复选框切换组件的可见性。“请回答我的问题。”…什么问题?更重要的是:展示你的努力会鼓励其他人提供帮助。请你更具体一点,并向我们展示一些代码,否则无法帮助你。