这么简单的概念,但有很多方法可以解释它。
我正在使用基于事件的库(Allegro)制作一个程序(游戏,特定游戏)。该库没有针对鼠标点击的特定事件,而是有按钮按下和按钮的事件。在编写基本菜单时,我遇到了一个问题。我认为点击是什么? 按钮事件? 按钮事件?后者,如果它发生在按钮之后不久?如果是这样,我从哪个位置取光标位置?
程序中的任何地方都没有拖动功能,因此所有选项对我来说都是有效的,除了最极端的情况(例如,将光标拖过屏幕很长一段时间)。所以我的问题是,有什么约定可以考虑点击吗?
答案 0 :(得分:2)
如果您尝试使用各种程序中的按钮,您可能会发现当您按下然后在其中释放鼠标时按钮会触发。
更具体地说,当您按下鼠标时,按钮会切换到“按下”状态,但如果您将鼠标拖到按钮外部,该按钮将恢复其正常状态,然后释放鼠标则无效。当你将鼠标悬停在按钮上时,可能还有另一个状态。
对于习惯于现代界面的用户,您确实需要提供所有这三种状态 - 正常,悬停和按下 - 以便为他们提供他们对可按压项目所期望的反馈。