2012-02-16 10 views
0

押されたボタンの値を変更するアプリケーションを作成しようとしています。 例:キーボードのCボタンが押されている場合、 '7'の値を出力するはずです。ボタンの値は、アプリケーションが実行されている間だけ変更する必要があります。キーボードのキーを再マッピングする方法

私のコード今のところ:

public partial class Form1 : Form 
{ 
    public Form1() 
    { 
     InitializeComponent(); 
     this.KeyDown += new KeyEventHandler(Form1_KeyDown); 

    } 

    void Form1_KeyDown(object sender, KeyEventArgs e) 
    { 
     if (e.KeyCode == Keys.C) 
     { 


     } 
    } 
} 

すべてのヘルプはいただければ幸いです。 ありがとう

+2

を意味していますか? – Justin

+0

私はそれがグローバルであるが、アプリケーションが開いている限り限りです –

答えて

0

これがアプリケーションの範囲内にある場合、私はバインドするためのキーのハッシュマップを作成していきます。 (KeyCodeに=>あなたの結合性)

あなたの例のように整数値が必要な場合は、次のようなマップがあります:あなたがWindowsでまたはちょうどあなたのアプリケーション内でグローバル

Dictionary<KeyCode,Integer> keyMap = new Dictionary<KeyCode,Integer>(); 

void Form1_KeyDown(object sender, KeyEventArgs e) 
{ 
    if(keyMap.ContainsKey(e.KeyCode) { 
    int boundValue = keyMap[e.KeyCode]; 
    // continue with what you want to do here 
    } 
} 
+0

こんにちはOnresolve、私はグローバルにしたいので、アプリケーションが開かれている限り、そのキーは私が設定した値を持っています。 –

+0

助けてくれてありがとう、これは素晴らしいアプリケーションの範囲で動作します –

関連する問題