tagCANDY CGI VBレスキュー(花ちゃん) の Visual Basic 2010 用 掲示板(VB.NET 掲示板) [ツリー表示へ]   [Home]
一括表示(VB.NET VB2005)
タイトルformを始めて表示する時にfocusをセットする方法
記事No2295
投稿日: 2005/09/27(Tue) 10:20
投稿者ぱっせ
[OSのVer]:WindowsXP   [VBのVer]:VB.NET2003 

始めまして、ぱっせと申します。
formを初めて表示する時に、focusをセットする方法について質問です。

自分が調べたところを記述致します。
間違っている点等がございましたら、ご指摘お願い致します。

formにtextboxコントロールを2つ作成します(Textbox1,Textbox2)。
両方のコントロールともに、tabstop=true / tabindex=1,2を設定しています。
以下のように記述しました。

=========================================================================================
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles
MyBase.Load
    Me.TextBox2.Focus()
End Sub
=========================================================================================

しかし、画面を表示した時はtextbox1(tabindexの若い方)にフォーカスが設定されていました。
formにボタンコントロールを配置し、clickイベントでMe.TextBox2.Focus()を記述して実行したとこ

思い通りにtextbox2にフォーカスがセットされていました。

formを初めて表示する時にフォーカスをセットする方法をご伝授お願いします。
わかり難い文章で申し訳ないですm(__)m

[ツリー表示へ]
タイトルRe: formを始めて表示する時にfocusをセットする方法
記事No2296
投稿日: 2005/09/27(Tue) 10:52
投稿者花ちゃん
Form が表示していない状態で Focus() をセットしてもフォーカスは移動しません。

VB6.0 の時は、エラーが発生したのですが?

Form を表示してからFocus() をセットして下さい。
    Me.Show()
    TextBox2.Focus()

[ツリー表示へ]
タイトル☆解決☆
記事No2298
投稿日: 2005/09/27(Tue) 11:05
投稿者ぱっせ
解決致しました。
VB6の時は、エラーが発生していたんですかー
VB.NETでは無言でした(^^;

ご伝授ありがとうございましたm(__)m

[ツリー表示へ]
タイトルRe: 別解答
記事No2321
投稿日: 2005/09/28(Wed) 15:12
投稿者じゃんぬねっと
参照先http://jeanne.wankuma.com/
> VB6の時は、エラーが発生していたんですかー

表示されていない、無効になっているコントロールへはフォーカスセットできなかったのです。

> VB.NETでは無言でした(^^;

この場合 Focus メソッドは無効になります。
やるならば、Me.ActiveControl = txtHoge とします。

[ツリー表示へ]
タイトルRe^2: 別解答
記事No2325
投稿日: 2005/09/28(Wed) 17:36
投稿者ぱっせ
じゃんぬねっとサンの方法でもフォーカスの設定に成功しました!
一度画面に出力するか、コントロールをactiveにしなければ駄目だという事なんですね。

勉強になります!
ありがとうございますm(__)m

[ツリー表示へ]