tft每日頭條

 > 生活

 > windows7可以設置鼠标雙擊速度嗎

windows7可以設置鼠标雙擊速度嗎

生活 更新时间:2024-08-04 20:16:05

對于這個問題,我還是建議你先看看MSDN技術文檔中關于鼠标點擊方面的内容,因為這些内容是我們開展研究的起點。我也假定你基本了解鼠标的單擊轉換為雙擊的基本工作原理。

在閱讀了相關的MSDN文檔之後,下面我們來看看文檔中的設計以及它如何影響你自己的用戶界面設計。

首先,有些開發者将鼠标雙擊動作設計為執行不同于鼠标單機的獨立任務。他們想知道是否可以在處理鼠标雙擊消息時,安全的忽略掉WM_LBUTTONDOWN這個消息。

當鼠标按鈕被第一次按下的時候,窗口管理器不知道接下來會不會有第二次點擊。(有時候用戶自己可能也不知道) 所以它會發出WM_LBUTTONDOWN消息并等待後面的更多消息。

現在,假設你是一個程序員,你仍然希望繼續采用讓雙擊操作與單擊操作無關的設計方案。你會怎麼做呢?能想到的一種方法是,在收到 WM_LBUTTONDOWN 消息時不做任何事情,除了設置一個計時器以在 GetDoubleClickTime() 毫秒内觸發。如果在該時間内收到 WM_LBUTTONDBLCLK 消息,那麼則認為發生了雙擊動作。 如果沒有,那麼它一定是單擊,因此可以執行單擊操作(雖然稍微有些延遲)。

如果你沒有設計雙擊事件處理,那麼,這種基于等待的技術方案也是必要的,但是第二次單擊與第一次單擊一起會導緻麻煩。為什麼這是必要的? 因為很多用戶在僅需要單擊的情況下,也會雙擊。以下是可以看到“避免第二次點擊的延遲操作”的一些示例:

> 為任務欄通知圖标顯示的上下文菜單。如果第一次單擊時上下文菜單立即出現,那麼第二次單擊将關閉上下文菜單,讓用戶感到困惑。 “我點擊了一下,發生了一些事情,然後它就消失了。” (用戶不會說“我雙擊了”;他們隻是說他們點擊了。雙擊是他們唯一知道怎麼做的事情,所以他們隻是稱之為“點擊”。舉個例子,如果你隻有一輛車,那麼,你不會說 “今天我開的是我的藍色車”。)

> 如果資源管理器處于一鍵模式,它會等待查看是否有第二次點擊,如果有,它會忽略它。 否則,當人們雙擊時,他們會啟動該程序的兩個副本。 此外,如果你禁止第二次點擊但不等待,那麼他們啟動的程序就會卡在資源管理器窗口後面,因為用戶在啟動程序後點擊了資源管理器。

> XP 風格的開始按鈕忽略第二次點擊。 否則,當人們雙擊“開始”按鈕時,第一次單擊将打開“開始”菜單,第二次單擊将關閉它! (這有時被稱為“去抖動”。)

接下來,我們來看看一個關于延遲鼠标點擊的實現代碼。

windows7可以設置鼠标雙擊速度嗎(Windows将鼠标單擊轉換為雙擊的原理)1

請注意,因為我們正在處理的是鼠标雙擊事件,所以這裡我們需要将CS_DBLCLKS屬性打開。wc.style = CS_DBLCLKS;

運行此程序時,單擊并雙擊客戶區。 請注意,該程序直到雙擊超時後才會對單擊做出反應,因為它正在等待查看你是否要繼續第二次單擊(因此是雙擊而不是單擊)。

後面我們會說說高于兩次的鼠标點擊的情況。

總結

畢竟操作系統不是神仙,它需要盡一切可能去理解用戶的點擊行為。有時候,這真是太難了。

最後

Raymond Chen的《The Old New Thing》是我非常喜歡的博客之一,裡面有很多關于Windows的小知識,對于廣大Windows平台開發者來說,确實十分有幫助。本文來自:《Logical consequences of the way Windows converts single-clicks into double-clicks》

最近我寫了個東西

正如你們所知道的,拓撲梅爾智慧辦公平台(Topomel Box)是一款綠色軟件,主要面向經常使用電腦的朋友。它提供了各種提升辦公效率的小功能,同時操作上盡可能地簡單方便。我想:你值得擁有。

windows7可以設置鼠标雙擊速度嗎(Windows将鼠标單擊轉換為雙擊的原理)2

,

更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!

查看全部

相关生活资讯推荐

热门生活资讯推荐

网友关注

Copyright 2023-2024 - www.tftnews.com All Rights Reserved