国际语言环境指南

鼠标选定

用户主要用鼠标按钮 1 进行选择。按此按钮会取消对任何当前选择的选定,并将插入光标和锚点移到在文本中按下按钮的位置。按住鼠标按钮 1 并拖动它,可以选择锚点和指针位置之间的所有文本,并取消选定此范围外的任何文本。

选定的文本受资源 XmNeditPolicy 影响,而后者可以设置为 XmEDIT_LOGICALXmEDIT_VISUAL。如果 XmNeditPolicy 设置为 XmEDIT_LOGICAL,并且选定的文本是双向的,则选定的文本从视觉上将是不连续的,而是多个文本段的集合。逻辑缓冲区中的文本与显示内容之间没有一对一的对应关系。

因此,双向文本的逻辑字符的连续缓冲区不采用连续的字符流绘制。与此相反,如果 XmNeditPolicy 设置为 XmEDIT_VISUAL,则选定文本在视觉上可能是连续的,而在逻辑缓冲区中却是分段的。因此,在同一个光标点处按选定、删除和插入双向文本的顺序操作不会产生同一个字符串。