除了在 Mouse/Key Up/Down 事件处理程序中设置多个标志之外,是否有一种简单的方法来判断是什么触发了 Button 的 Click 事件?我目前只对将鼠标与其他所有东西区分开来感兴趣,但如果可能的话,处理手写笔和其他输入类型会很好。我必须创建自己的按钮控件来实现这一点吗?
编辑:澄清我为什么关心:在这种特殊情况下,我试图为一种图片查看器实现“下一个”和“上一个”按钮。有问题的图片可能有不同的大小,按钮的位置会改变(所以它们总是在图片下方居中)。如果您需要滚动几张图片,用鼠标跟随这些按钮是很烦人的,所以我想保持鼠标位置相对于点击的按钮不变,但前提是它是用鼠标点击的,而不是键盘点击。
Edit2:按钮是在顶部还是在底部都没有关系,因为中心无论如何都可以改变。这里的“图片查看器”只是一个抽象,在这种特殊情况下,图片的左上角保持其位置对我来说很重要,但详细说明超出了问题的范围。在这种应用程序中缩放图片也不是那么简单,所以我确实想知道我在讨论 UI 实现时提出的问题的答案。