0

マクロにユーザーフォームがあります。ActiveX ボタンをラベルに置き換えました。各 ActiveX ボタンにはアクセラレータ キーがあり、すべて期待どおりに機能しました。ActiveX ボタンをラベルに変更すると、アクセラレータ キーがラベルで機能しなくなりました。わからない。アクセラレータ キーを再び機能させるための提案をいただければ幸いです。助けてくれてありがとう

4

1 に答える 1

1

Label コントロールの Accelerator プロパティの動作は、フォーカスをタブ オーダーの次のコントロールに設定することです。コマンド ボタンのアクセラレータの動作は、その Click イベントを呼び出すことです。アクセラレータ キーから、ラベルのクリック イベントやその他のイベントを呼び出すことはできません。

ラベルを使用する場合は、ラベルの後にテキスト ボックスを配置し、必要なコードを Textbox_Enter イベントに配置できます。2 つのラベルと 2 つのテキスト ボックスを作成しました。各テキストボックスの高さと幅を 1 にしたので、ほとんど見えなくなりました。ラベルのアクセラレータが押されると、フォーカスがテキスト ボックスに移動し、Enter キーも発行されました。

Private Sub TextBox1_Enter()

    'do the thing the button would do

End Sub

ちょっとしたハックと少し余分なセットアップがありますが、うまくいきます。

于 2015-07-21T19:31:32.767 に答える