• ベストアンサー

テキストボックスにカーソルをもってきたいんです。

プログラムを起動した時に、テキストボックスにカーソルを置くようにするには、どのようなプログラムになるのでしょうか?よろしくお願いします。

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

  • ベストアンサー
  • Kuppycat
  • ベストアンサー率50% (109/216)
回答No.3

カーソルを持って行きたいテキストボックスのTabIndexを0になるように設定してください。 もしくは。 Private LoadFlg As Boolean Private Sub Form_Load() LoadFlg = True End Sub Private Sub Form_Active() If LoadFlg Then (テキストボックス).SetFocus LoadFlg = False End If End Sub と、小細工。

tyakosan
質問者

お礼

出来ました☆ありがとうございます!あの、また質問なんですけど、今ソフトキーボードを作っていて、そこからメールやインターネットも起動させるようにしているんです。で、さっきのプログラム起動時に、テキストボックスにカーソルを置くことができたのですが、例えばワードを起動するとワードの方がアクティブになって、ソフトキーボードにあるテキストボックスのカーソルが消えてしまうんです。こっちをアクティブにするにはどうしたら良いのでしょうか。よろしくお願いします。

その他の回答 (3)

回答No.4

前面にする方法で、標準のAppActivateがあります。 普通のヘルプに出ているし、履歴もいっぱいあります。 調べましょう。 ただし、同じキャプションが複数存在する場合もあるのでAPIを利用する方法をご照会。 http://okweb.jp/kotaeru.php3?q=164809 の中のAPIを二つ ※SetForegroundWindow SetForegroundWindow フォームハンドル で前面化 ※SetWindowPos HWND_TOPMOSTの組み合わせと組み合わせて、フォームを最前面表示 ただしフォーカスは失うので、要注意

回答No.2

Form_Loadに Me.Show のあと (テキストボックス).SetFocus

tyakosan
質問者

お礼

出来ました!ありがとうございました☆

  • thrush76
  • ベストアンサー率27% (38/137)
回答No.1

Form_Loadに(テキストボックス).SetFocusと書いてはどうですか。

tyakosan
質問者

補足

質問では言わなかったんですけど、Form_Loadにtext1.SetFocusとかいたんですけど、『プロシージャの呼び出し、または引数が不正です』と出るんです。どうしたら良いのでしょうか?