Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/user-interface/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
User interface 如何正确使用onmousedown/onmouseup?_User Interface_Mouse_User Experience_Hci - Fatal编程技术网

User interface 如何正确使用onmousedown/onmouseup?

User interface 如何正确使用onmousedown/onmouseup?,user-interface,mouse,user-experience,hci,User Interface,Mouse,User Experience,Hci,每当我编写鼠标处理代码时,onmousedown/onmouseup/onmousemove模型似乎总是强迫我生成不必要的复杂代码,最终仍然会导致各种各样的UI错误 现在我在主要软件中看到的主要问题是“鬼鼠标”事件,你把鼠标拖到窗口外,然后放开。一旦您返回窗口,应用程序仍然认为您按下了鼠标,即使按钮已打开。当您试图突出显示屏幕边框的内容时,这尤其令人恼火 是否有一种正确的方法来编写鼠标代码,或者整个模型只是有缺陷?通常情况下,我们会在鼠标向下移动时捕获鼠标事件,这样无论插入符号从应用程序窗口移出

每当我编写鼠标处理代码时,onmousedown/onmouseup/onmousemove模型似乎总是强迫我生成不必要的复杂代码,最终仍然会导致各种各样的UI错误

现在我在主要软件中看到的主要问题是“鬼鼠标”事件,你把鼠标拖到窗口外,然后放开。一旦您返回窗口,应用程序仍然认为您按下了鼠标,即使按钮已打开。当您试图突出显示屏幕边框的内容时,这尤其令人恼火


是否有一种正确的方法来编写鼠标代码,或者整个模型只是有缺陷?

通常情况下,我们会在鼠标向下移动时捕获鼠标事件,这样无论插入符号从应用程序窗口移出,鼠标移动和鼠标向上移动都会遍历代码


最近,当运行VM或远程会话时,这是一个问题,其中的应用程序很难在主机上窗口表示的计算机屏幕区域之外跟踪鼠标。

我不确定您尝试在什么环境中跟踪鼠标按钮,但最好的处理方法是在检测到onmousedown后,让鼠标侦听器100%跟踪onmouseup


这样,用户在哪个屏幕区域释放鼠标按钮并不重要。无论发生在何处,它都将重置

想必这就是泡沫捕获?