0
私はwinformアプリケーション(Formname f1)を持っています。そのフォームの中には、2つのボタン(b1とb2)を持つパネル(p1)があります。不可視のパネル内のボタンからフォーム自体にフォーカスを移動することは可能ですか?
パネルはデフォルトでenabled = falseかつvisible = falseです。
私はフォーム(keypressイベント)でenterを押すと、パネルを表示して有効にします。
私は次のようにします私は、ボタン(B1)をクリックして再度ボタンを押すと(preview_keyodwnイベント)を入力します。私はパネルのEnterキーを押すと、再び見えてきませんが今
f1.ActiveForm.Focus
p1.Enabled = false;
p1.visible = false;
。なぜ私はフォーカスがフォーム自体ではなく、ボタン上にあることを知ったのかを確認した後。
Panelが非表示になって無効になったときに、ボタンをフォーム自体に配置しないようにする方法はありますか?
はタブストップ= falseを試すか、よりよい解決策がForm.ProcessCmdKeyをオーバーライドすることであるのTabIndex – live2
を増やすパネルを隠した後、selectメソッド。次に、どのコントロールにフォーカスがあるかは関係ありません! –
@JonathanWillcockそれは非常に良いポイントですtnxは、そのイベントの存在について知りませんでした。私は代わりにそれを使用します(私のやり方よりも良い方法です)。 – Thomas