- 締切済み
VB6 ユーザーコントロールのフォーカス無効
現在VB6 SP5にて、テンキーのようなユーザーコントロールを作成しています。 コマンドボタンを配置し、押された場合にキーボードの入力をエミュレートするような作りにしています。 問題は、作成したコントロールをフォームに貼り付けて使用する場合に、マウスでクリックしたキーに応じて、現在フォーカスのあるテキストボックスなどに入力したいのですが、ユーザーコントロールのコマンドボタンにフォーカスが移ってしまい、うまくいきません。 ユーザーコントロールのCanGetFocusプロパティをFalseに設定しようとすると、「フォーカスを取得できないコントロール上に配置された子コントロールは、フォーカスを取得することができません。」とエラーが表示されてFalseにできません。 フォーカスを無効にし、このような機能を実現するには何か良い方法ありますでしょうか?
- みんなの回答 (1)
- 専門家の回答
みんなの回答
- foomufoomu
- ベストアンサー率36% (1018/2761)
回答No.1
>現在フォーカスのあるテキストボックスなどに入力したいのですが これが間違い。「以前フォーカスのあったテキストボックスなどに・・・」と考えればよいです。 テキストボックスの、Gotforcus イベントで、そのテキストボックスをオブジェクト変数に記録しておいて、 キーボード風のボタンが押されたとき、その変数のテキストボックスに値を入れればよいです。