如何获取Position,以便与给定行和列中的setCaret一起使用?
该组件具有单一字体,并且是等宽字体。我见过的大多数其他答案都是用于确定给定位置的行号和列号。我正在寻找相反的方法。
我确实看到了JTextComponent.viewToModel,但无法走远。必须有一个快速的方法? : - )
答案 0 :(得分:3)
使用Element
的{{1}}结构获取指定行的起始偏移量,然后只需添加要将Caret定位的列:
Document
答案 1 :(得分:2)
您可以获得行高和字符宽度。使用modelToView()
返回的矩形获取位置0和位置1的行高和x差值以获得x。
然后使用viewToModel()
传递y=rowHeight*rowNumber
和x=charWidth*colNumber