WinFormチェックボックスにキーボードショートカットを設定する必要があります。チェックするかチェックを外す。キーボードショートカットでWinFormチェックボックスをオンまたはオフにする方法はありますか?
私はこれの可能性を知りません。
しかし、矢印キーとスペースキーのヘルプを使って行うことができます。
私の要件は、
Alt + C - Checked
Alt + U - Un checked.
がどれ可能性があります。..、以下のようなものです?。
WinFormチェックボックスにキーボードショートカットを設定する必要があります。チェックするかチェックを外す。キーボードショートカットでWinFormチェックボックスをオンまたはオフにする方法はありますか?
私はこれの可能性を知りません。
しかし、矢印キーとスペースキーのヘルプを使って行うことができます。
私の要件は、
Alt + C - Checked
Alt + U - Un checked.
がどれ可能性があります。..、以下のようなものです?。
このような形式のキーダウンで必要なキーの組み合わせを手動で確認できます(C#と仮定)。 Cody Grayが指摘しているように、予約済みのキーボードニーモニックのために別のキーの組み合わせを試す必要があります。
private void Form1_KeyDown(object sender, KeyEventArgs e)
{
// When the user presses both the 'Alt' key and 'C' key,
if (e.Alt && e.KeyCode.ToString() == "C")
{
//check the checkbox
this.checkBox1.Checked= true;
}
// When the user presses both the 'Alt' key and 'U' key,
if (e.Alt && e.KeyCode.ToString() == "U")
{
//Uncheck the checkbox
this.checkBox1.Checked= false;
}
}
イベントがフォーカスを持つコントロールに渡される前に、フォームがキーイベントを受け取るかどうかを示す値を取得または設定するためのチェックForm.KeyPressプロパティ。
これは私のプロジェクトでは火災ではありません。いかなる優先権も設定されていますか?または何かを逃した。ありがとう。 – Sagotharan
+ 1で素早く答えることができます。 – Sagotharan
ああ私はPropriety名前付きキープレビューを見つける。 – Sagotharan
ニーモニックで行うことができます(チェックボックスのテキスト内でショートカットに使用するキーを含めても構いません)。
は...その後、キーをテキストに下線表示されます。
これは、フォームコントロールのprocessCmdKey
をオーバーライドすることで実現できます。この方法ですべてのショートカットを設定することができます。以下のVB.NETコードを確認してください:
Protected Overrides Function ProcessCmdKey(ByRef msg As System.Windows.Forms.Message, keyData As System.Windows.Forms.Keys) As Boolean
If keyData = Keys.N Then
''call a method that check or uncheck the control
End If
''you can even combine modifiers keys
If keyData =keys.Control + Keys.T Then
''do something
End If
Return MyBase.ProcessCmdKey(msg, keyData)
End Function
これは、Altキーを使用して行うべきではありません。それはキーボードのニーモニックのために予約されています。 –
OK友達。私はcとuのボタンだけを使用します。もう一つのことニーモニックは何ですか? – Sagotharan
可能な複製[winformsでキーボードショートカットを実装するための最良の方法は?](0120-385-005) –