【发布时间】:2025-05-11 16:10:01
【问题描述】:
我有一个 Wacom Epad。最初,我在类构造函数上订阅 onPenData 事件,并在设备断开连接时取消订阅。
当用户在 Wacom Epad 屏幕上多次点击时,它会触发我订阅的 onPenData 事件。
private void onPenData(wgssSTU.IPenData penData) // Process incoming pen data
{
// Do some stuff
}
所以我想做的是实现某种机制来避免 onPenData 在重复点击时被执行。
我该怎么做?
【问题讨论】:
-
您可以尝试设置一个全局变量被点击并在执行方法逻辑之前检查它。我不确定这就是你的意思。如果你的意思是不要在一个时间段之间开火,比你可以使用计时器说 5 秒。
-
不知道什么是“Wacom Epad”,但多次触发事件有什么问题?请详细说明问题。
-
@user1624552,如果您的代码允许设置标志,那么请在您的事件订阅后添加标志=false,然后连续多次点击如果标志=false,则事件将不会再次订阅 bcoz 标志值不正确.我想这对你有帮助吗
-
@Dennis 这是一种用户使用笔点击它的平板电脑。因此,当用户使用笔重复点击它时,例如两次点击之间的间隔少于 1 秒,我的意思是,用户非常快速地点击它很多次,我的程序崩溃说内存不足。
标签: c# events event-handling