使SWT StyledText窗口小部件始终滚动到其结尾

问题描述

| 我如何获得一个SWT StyledText窗口小部件,使其始终保持滚动到末尾,即使在其中添加了新的文本行也是如此? 我试图寻找一些可以让我设置滚动位置但找不到的功能。没有一个属性可以让我执行此操作。     

解决方法

        添加文本后,只需添加以下行:
styledText.setTopIndex(styledText.getLineCount() - 1);
如果您在多个地方更改了StyledText的内容,请在
Modify
上使用侦听器,以免重复自己:
styledText.addListener(SWT.Modify,new Listener(){
    public void handleEvent(Event e){
        styledText.setTopIndex(styledText.getLineCount() - 1);
    }
});
    ,        另一个变化:
    styledText.addModifyListener(new ModifyListener() {

        @Override
        public void modifyText(ModifyEvent e) {
            styledText.setTopIndex(styledText.getLineCount() - 1);

        }
    });