2013-11-25 93 views
1

我知道如何檢索一個PictureBox.Click事件鼠標的座標,雖然eMouseHover事件中的鼠標座標?

PictureBox.MouseHovere不返回這些信息。

如何獲取MouseHover事件中的鼠標座標?有沒有辦法?

在此先感謝。

+0

這個問題與Visual Studio完全沒有關係。請用您感興趣的語言重新標記您的問題。 –

+1

'MouseMove'會爲您提供這些座標。 –

+0

請記住適當地標記您的問題。 Visual Studio只是一個IDE,它不會告訴我們你正在使用的語言或框架。我假設它是C#和Windows窗體 - 我已經相應地重新簽名。如果這不正確,請更改它。 –

回答

3

Control.MouseHover「當鼠標指針停留在控件上時發生。」

MouseHover的一個典型用途是當鼠標停在控件(「懸停矩形」)的指定區域內的控件上時顯示工具提示。該事件引發所需的暫停由MouseHoverTime屬性以毫秒爲單位指定。

因此,只有當鼠標懸停在控件上時,纔會引發此事件 - 存在延遲關聯。所以這個位置有點不相關,因爲在這個延遲期間,鼠標可能會有所移動。

你真的需要使用這個事件嗎?由於Dan-o mentioned,MouseMove通過了一個MouseEventArgs,它提供了座標,如你所請求的。這可能是正確的選擇,取決於你想要做什麼。

雖然您可以使用Cursor.Position屬性獲取鼠標位置但任何時候都可以使用。這會給你光標的屏幕座標。從這裏,您可以調用Control.PointToClient方法,以獲取相對於特定Control的座標。

+0

gr8t。謝謝。 – user3029534