以下の図に示すように、プロジェクト開発プロセス中に、Youdao Dictionaryと同様のソフトウェア設定でカスタムショートカットキー機能を実装する必要があります。
private void keyDown(オブジェクト送信者, KeyEventArgs e)
{
StringBuilder keyValue = new StringBuilder();
keyValue.Length = 0;
keyValue.Append("");
If (e.Modifiers != 0)
{
if (e.Control)
keyValue.Append("Ctrl + ");
if (e.Alt)
keyValue.Append("Alt + ");
if (e.Shift)
keyValue.Append("Shift + ");
}
If ((e.KeyValue >= 33 && e.KeyValue
(e.KeyValue >= 65 && e.KeyValue
(e.KeyValue >= 112 && e.KeyValue
{
keyValue.Append(e.KeyCode);
}
else if ((e.KeyValue >= 48 && e.KeyValue
{
keyValue.Append(e.KeyCode.ToString().Substring(1));
}
This.ActiveControl.Text = "";
// 現在アクティブなコントロールのテキスト内容を設定します
This.ActiveControl.Text = keyValue.ToString();
}
private void keyUp(オブジェクト送信者, KeyEventArgs e)
{
文字列 str = this.ActiveControl.Text.TrimEnd();
int len = str.Length;
If (len >= 1 && str.Substring(str.Length - 1) == "+")
{
This.ActiveControl.Text = "";
}
}
キャラクター
| e.KeyValue
|
a-z|A-Z
| 65-90
|
F1-F12
| 112-123
|
0-9
| 48-57
|
ページアップ
| 33
|
ページダウン
| 34
|
終了
| 35
|
ホーム
| 36
|
左(←)
| 37
|
上(↑)
| 38
|
右(→)
| 39
|
下(↓)
| 40
|
次に、テキストボックス コントロールの _KeyDown イベントと _KeyUp イベントをそれぞれ設定し、その中で上記の 2 つのコア関数を呼び出します。
以下に示すように:
コードをコピーします コードは次のとおりです:
private void textBox1_KeyDown(オブジェクト送信者, KeyEventArgs e)
{
keyDown(送信者, e);
}
private void textBox1_KeyUp(オブジェクト送信者, KeyEventArgs e)
{
keyUp(送信者, e);
}
http://www.bkjia.com/PHPjc/946746.htmlwww.bkjia.comtruehttp://www.bkjia.com/PHPjc/946746.html技術記事 C# WinForm でのショートカット キーのカスタマイズの例 この記事のソース コードをダウンロードします: http://xiazai.jb51.net/201501/tools/cs-key-setting.rar プロジェクトの開発プロセス中に、何かを実装する必要があります。 Youdao辞書に似ています...