-1
私は、menuStripコントロール(レイアウトVerticalStackWithOverflow)を持つフォームを持っています。矢印キーを使ってこのメニューをナビゲートするにはどうすればよいですか?また、選択した項目にEnterキーを押してもどうやったらいいですか?なぜ垂直キーで矢印キーが機能しないのですか?
私は、menuStripコントロール(レイアウトVerticalStackWithOverflow)を持つフォームを持っています。矢印キーを使ってこのメニューをナビゲートするにはどうすればよいですか?また、選択した項目にEnterキーを押してもどうやったらいいですか?なぜ垂直キーで矢印キーが機能しないのですか?
私は特にそのコントロールについて知っていませんが、矢印とEnterはどちらもTextBoxで動作しません。コントロール間を移動するデフォルトのキーフォームはTabです。このようなSelectNextControlメソッド(この場合はEnter)を呼び出すことによって、keypressイベントをオーバーライドし、その機能を追加する必要があります。
private void keypressed(Object sender, KeyPressEventArgs e)
{
if (e.KeyChar == (char)Keys.Return)
{
this.SelectNextControl((Control) sender, true, true, true, true);
}
}
これはWinFormsです。 – Caladan
矢印キーとEnterキーはそのまま使用できます。フォームが開いているときに「Alt」を押してから、矢印でナビゲートすることができます... enterを押してメニュー項目のクリックイベントを呼び出します。 – Jim
お返事ありがとうございます。しかし、Altキーを押さずにメニューをナビゲートする方法はありますか?または、プログラムでAltを送信する必要がありますか?私はプログラムランチャーを構築しようとしています。矢印キーは即座に動作するはずです。 – Caladan