我有一個面板,其中包含許多pictureboxes。每個圖片框已經註冊了「contextRightMenu」作爲其上下文菜單。如何在上下文菜單出現時獲取鼠標位置?
當彈出的上下文菜單是我想要的當前鼠標位置。
我已經嘗試通過使用mouseDown獲取鼠標位置並單擊,但這些事件發生在單擊上下文菜單中的一項之後,並且這太遲了。
上下文菜單的彈出事件不提供鼠標事件參數,所以我不知道如何獲取鼠標位置。
如果我能得到鼠標事件的參數很容易。
然後我就可以:
this.contextRightClick.Popup += new System.EventHandler(this.contextRightClick_Popup);
// If EventArgs include mouseposition within the sender
private void contextRightClick_Popup)(object sender, EventArgs e)
{
int iLocationX = sender.Location.X;
int iLocationY = sender.Location.Y;
Point pPosition = new Point(iLocationX + e.X, iLocationY + e.Y); // Location + position within the sender = current mouseposition
}
誰能幫助我或者得到一些鼠標事件參數,還是建議將文本菜單彈出窗口前,運行一個事件?
在此先感謝
現在就試試吧! – Ikky 2010-04-16 08:22:18
鼠標點擊沒有任何鼠標事件參數 – Ikky 2010-04-16 08:32:34
嘗試MouseDown或MouseUp事件。不知道CF中支持的東西。也看看Cursor.Position屬性。 – Amsakanna 2010-04-16 09:10:54