このコードは、押されたボタンのハッシュコードを示していますが、コントロールボタンを押しても何もしません。誰か助けてくれませんか?
private void treeView1_KeyPress(object sender, KeyPressEventArgs e)
{
MessageBox.Show(e.KeyChar.GetHashCode().ToString());
}
C# Winフォーム
このコードは、押されたボタンのハッシュコードを示していますが、コントロールボタンを押しても何もしません。誰か助けてくれませんか?
private void treeView1_KeyPress(object sender, KeyPressEventArgs e)
{
MessageBox.Show(e.KeyChar.GetHashCode().ToString());
}
C# Winフォーム
Ctrlは修飾キーであるため、それ自体でキー押下イベントを生成することはありません。
キー押下は、入力された実際の文字(「A」など)と考えてください。対照的に、修飾キー(Ctrl、Alt、Shift)は通常、何も「入力」せず、他のキーと連動して効果を修飾する傾向があります(たとえば、Shiftキーを押すと「a」が「A」に変わります。ctrl多くの場合、「a」を「すべて選択」のホットキーに変更します。Altは、「A」の文字で始まるメインメニュー(存在する場合)を開こうとする場合があります)
ctrlを使用するには、通常、通常のキーが押された時点での状態を確認するか(たとえば、「A」が押されたとき、キーの押下が「A」または「ctrl + A」のどちらを意味するかを判断する)、またはキーの状態を非同期で(たとえば、ドラッグ中にctrlを押したままにして、ドラッグに変更を適用するかどうかを確認します。たとえば、1つの軸でのみドラッグするように制限したり、ドラッグ中のファイルを移動するのではなくコピーしたりします)。