2015-08-28 69 views
0

我想創建一個程序,通過按下W,A,S,D鍵來移動光標。我創建了一個表格,因爲很難將Keyboard.IsKeyDown(Key.W)放在腳本中。在Windows窗體中移動鼠標光標

這是我的代碼至今:

using System; 
using System.Collections.Generic; 
using System.ComponentModel; 
using System.Data; 
using System.Drawing; 
using System.Linq; 
using System.Text; 
using System.Threading.Tasks; 
using System.Windows.Forms; 
using System.Windows.Input; 

namespace keyboardMouse 
{ 
    public partial class Form1 : Form 
    { 
     public Form1() 
     { 
      InitializeComponent(); 
     } 

     private void rdnbtnMove_CheckedChanged(object sender, EventArgs e) 
     { 
      if (Keyboard.IsKeyDown(Key.W)) 
      { 
        Cursor.Position = new System.Drawing.Point(  
         Cursor.Position.Y + 5); 
      } 
     } 
    } 
} 

然而,引發此錯誤

會員「Cursor.Position」不能用一個實例 引用來訪問;用類型名稱代替它

我該如何解決這個問題?任何幫助表示讚賞。

+0

從DUP:>簡單用 「MousePosition」 取代 「Cursor.Position」。 –

+0

你也應該看看這個方法:http://stackoverflow.com/questions/647236/moving-mouse-cursor-programmatically?rq=1 –

+0

你的'Cursor.Position = ...'代碼正在爲我工​​作,在C#6中。直接轉換到'MousePosition'將不起作用,因爲它沒有setter。 –

回答

1

您的代碼所在的Form有一個Cursor屬性。這不是你想要訪問的。

代替完全限定的類型,作爲錯誤指示:

System.Windows.Forms.Cursor.Position