gpt4 book ai didi

java - 检测用户何时完成调整 SWT shell 的大小

转载 作者:塔克拉玛干 更新时间:2023-11-01 21:36:47 26 4
gpt4 key购买 nike

我有一个可以调整大小的 SWT shell。每次调整大小时,我都必须做一些计算密集型的事情。

我可以在我的 shell 上注册一个 ControlListener,但这会在整个调整大小操作期间持续生成事件,而且我不知道调整大小拖动类型的鼠标操作何时结束。

我希望能够检测到用户何时完成调整 shell 的大小,然后启动我的计算密集型操作。有什么想法吗?

最佳答案

使用计时器并在自上次收到调整大小事件后延迟一秒后开始操作怎么样?草稿:

long lastEvent;

ActionListener taskPerformer = new ActionListener() {
public void doCalc(ActionEvent evt) {
if ( (lastEvent + 1000) < System.currentTimeMillis() ) {
hardcoreCalculationTask();
} else {
// this can be timed better
new Timer(1000, taskPerformer).start();
}
}
};
}

在调整大小事件中:

 lastEvent = System.currentTimeMillis();
new Timer(1000, taskPerformer).start();

关于java - 检测用户何时完成调整 SWT shell 的大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2074966/

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