m0_74850873 2023-04-02 00:16 采纳率: 0%
浏览 12

Java中JTextArea如何在指定的某行某列输入内容

已经设置好了一个7行7列的文本域
JTextArea a=new JTextArea(7,7);

假如我想在第3行的7列分别输入“1 2 3 4 5 6 7”,我应该怎么输入?
如果想在第4行第5列输入“hello”又该怎么办?

  • 写回答

2条回答 默认 最新

  • Taylor 淡定哥 2023-04-02 02:58
    关注

    可以通过调用JTextArea的setText()和replaceRange()方法来实现
    要在第3行的7列输入“1 2 3 4 5 6 7”,可以将整个文本内容设置为一个包含换行符和制表符的字符串,然后使用setText()方法将其设置为文本域的内容。具体实现如下:

    String text = "1\t2\t3\t4\t5\t6\t7\n\n\n\n\n\n";
    a.setText(text);
    
    
    

    其中,\t表示制表符,\n表示换行符。在这个例子中,我们使用了3个换行符将光标移动到第3行。

    如果想在第4行第5列输入“hello”,可以使用replaceRange()方法将文本域中该位置的内容替换为新的内容。具体实现如下:

    a.replaceRange("hello", a.getLineStartOffset(3) + 4, a.getLineStartOffset(3) + 9);
    
    
    

    在这个例子中,我们使用getLineStartOffset()方法获取第4行的起始偏移量,然后加上5和10,分别表示在第5列和第9列之间插入新的内容。

    评论

报告相同问题?

问题事件

  • 创建了问题 4月2日

悬赏问题

  • ¥15 如何用BL55072驱动屏幕
  • ¥100 网页利用NC文件数据生成云图
  • ¥15 vivo手机的101root检测通常包括Bootloader状态检测吗,有没有懂的人来回答下?
  • ¥15 c++ 单例模式 在不项目之间的引用问题
  • ¥15 我想在微信名中用上红桃♥️这个表情 可是保存不了 说是有特殊符号或者不支持的语言 需要怎么做呢
  • ¥15 oracle报skip not validate connection
  • ¥15 请问左奇异向量怎么求解呢?
  • ¥15 有偿求一款知识付费+流量主支付宝小程序开源
  • ¥15 Arcgis pro制图
  • ¥15 vivado综合时间过长