• ベストアンサー

フォームを開く時のイベント処理

Visual Basic 6.0 あるフォーム読込時イベント[Private Sub Form_Load()]で コマンドボタンにフォーカスを移動しようとしたら、エラーしてしましました。 Private Sub Form_Load() CommandButton.SetFocus ’プロシージャの呼び出し、または引数が不正です End Sub Form_Open や BeforeUpdate ? 開いた後にフォーカスをセット出来る イベント処理は無いでしょうか? ご教授願います。

質問者が選んだベストアンサー

  • ベストアンサー
  • OMEGAT
  • ベストアンサー率70% (455/642)
回答No.1

Form_Load()だとまだフォームが表示されていないのでSetFocusできないと思われます。 Form_Activate() でどうでしょうか。

mmac
質問者

お礼

回答有難う御座いました。 Private Sub Form_Activate() でSetFocus出来ました。 フォームアクティブ時のイベントプロシージャ を探せずに困っていました、助かりました。

その他の回答 (2)

  • dr-9
  • ベストアンサー率47% (24/51)
回答No.3

フォームロードイベントで初期化した変数を用い、アクティベートイベントでそれを利用すればフォーカスセット出来るのでは?

mmac
質問者

お礼

回答有難う御座いました。 Loadの後のアクティベートイベントで解決できました。 >フォームロードイベントで初期化した変数を用い 初心者のため、この部分は理解出来ませんでしたが参考に後で勉強させて頂きます。

  • trajaa
  • ベストアンサー率22% (2662/11921)
回答No.2

Loadイベントは、オブジェクトの実体を生成する時のイベントですから イベントが完了するまで、オブジェクト内の実体を操作出来ません。 フォーカス設定などは、Loadの後のアクティベートイベントなどが適当ではないでしょうか?

mmac
質問者

お礼

回答有難う御座いました。 Loadの後のアクティベートイベントで解決出来ました。

関連するQ&A