gpt4 book ai didi

java - SWT StyledText - 监听 clientArea 变化

转载 作者:行者123 更新时间:2023-11-30 06:22:01 26 4
gpt4 key购买 nike

我遇到了 SWT StyledText 滚动条的问题。我已经为我的样式文本的两个(水平和垂直)滚动条添加了监听器:

styledText.getHorizontalBar().addListener (SWT.Selection, new Listener () {
public void handleEvent (Event e) {
//Some action
}
});
styledText.getVerticalBar().addListener (SWT.Selection, new Listener () {
public void handleEvent (Event e) {
//Some action
}
});

我的问题是,我添加的监听器仅在用户使用鼠标移动滚动条时才会使用react。例如,如果只有部分 styledText 可见并且用户键入某些文本,这会导致可见客户区发生变化,那么听众将不会收到有关变化的通知。

我的问题是 - 是否有可能以某种方式监听样式文本的可见客户区的变化?

最佳答案

JFace TextViewer(使用 StyledText)支持 IViewportListener,它可以执行您想要的操作。

如果您不想使用 JFace,那么您可以复制 TextViewer 调用其监听器的方式。它监听控件大小调整、按键释放、按键按下、鼠标弹起和小部件的选择。然后检查 StyledText.getTopPixel() 是否已更改。

关于java - SWT StyledText - 监听 clientArea 变化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19754909/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com