代码之家  ›  专栏  ›  技术社区  ›  Nick

SWT:根据StyledText控件中插入符号的位置定位对话框

swt
  •  1
  • Nick  · 技术社区  · 14 年前

    我的第一个想法是得到shell的位置加上StyledText的位置加上插入符号的偏移量。当我试图获取StyledText的位置时,它会说0,0(我假设是因为我的布局选择,表单布局)。我也看不到从FormData获取位置的好方法(它似乎是计算出来的)。

    我可以得到鼠标光标的位置,但我希望它就在用户正在键入的内容下面。

    有人有什么想法吗?

    1 回复  |  直到 14 年前
        1
  •  2
  •   Nick    14 年前

    为了得到实际的位置,函数 toDisplay() 应该使用。例如:

    Point displayPoint = myText.toDisplay(sqlText.getLocation());
    

    Point caretLocation = myText.getCaret().getLocation();
    Point calcPoint = new Point(displayPoint.x+caretLocation.x, displayPoint.y+caretLocation.y);