• ベストアンサー

コントロールの配列化について

VB入門者ですが、よろしくお願いします。 2005でtextboxの配列かをするにはどうすれば、 いいのでしょうか? 始めたばかりなので、できるだけわかりやすく お願いします。

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

  • ベストアンサー
  • unamana19
  • ベストアンサー率62% (56/89)
回答No.1

VB2005からはコントロール配列(TextBox(1).Textなどで参照できる)はサポート されなくなっています。 TextBox(1).Text = "1" TextBox(2).Text = "2" 上記のような使い方をしたのであれば、 (1)フォーム上にTextBox1,TextBox2を配置 (2)テキストボックスを格納する配列を宣言 (3)初期化時(Loadイベントなど)で、フォームに配置したTextBoxを(2)で宣言した配列に格納 (4)以後、配列を利用できる のようになります。 (コード例) Public Class Form1   Private _TextBoxs As New List(Of TextBox)   Private Sub Form1_Load(ByVal sender As System.Object, ByVal e ...     ''配列に格納     Me._TextBoxs.Add(Me.TextBox1)     Me._TextBoxs.Add(Me.TextBox2)     ''配列を利用     Me._TextBoxs(0).Text = "0"     Me._TextBoxs(1).Text = "1"   End Sub End Class ただし、これだとイベントは処理できませんので、適切にイベントハンドラを割り当てます。

oshiete44
質問者

お礼

遅くなってすみません。 ありがとうございました。

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • コントロール配列と同じような扱い方

    TextBox1、TextBox2、TextBox3・・・・TextBox10 と10個のテキストボックスにVB6で使っていたコントロール配列と同じような処理の仕方をコードで教えていただけませんか。 for i=0 to 9 TextBox(i).Text=i next i 上記のコードをVB.NETで書くとすれば、どのように書けばいいかということさえわかれば、なんとか頑張れる気がします。

  • VB2005におけるコントロール配列

    VB2005でフォーム上にTextBoxがいくつかあるとしますと、そのTextBoxをコントロール配列のようにしたいのですがどのようにすればよいのかわかりません。調べてみたのですがわからなかったのでお力をお貸しください。よろしくお願いいたします。

  • VB2005 コントロール配列について教えていただけませんか?

    現在VB2005を用いてプログラムを行なっている初心者です。 ここのサイトでVB2005ではコントロール配列は使用できないことを知りました。そこで、例えばフォーム上にTextBoxを5個配置して、各TextBoxに入力された値を配列に格納するのにはどのようにすれば良いでしょうか? data(0) = textbox1.text data(1) = textbox2.textと一つずつやるしかないでしょうか・・・ For文などを用いて簡単にできる方法を教えてください。 よろしくお願い致します。

  • コントロール配列

    VB.NETでコントロール配列を行うときには、 dim txt as testbox = new textbox txt = me.textbox1 とすれば、フォーム上のtextbox1をtxtで 操作することが可能となりますが、 txt = me.textbox1というのは、me.textbox1の 参照先を代入していることとなるのでしょうか?

  • コントロール配列

    VB6です。 TextBoxを10個配列にし。オブジェクト名txtで、 txt(0)~txt(9)とします。 ここで、txt(0)をクリックしたらform2が表示、txt(9)をクリックしたらform2が表示としたいのですが配列にしてるため、 txt_clickのプロシージャ?でやったらどのtextboxをクリックしても表示になってしまます(当たり前ですが) どうやったらtxt(0)だけを指定して表示とできるのでしょうか? ご教授お願い致しますm(__)m

  • VBAでコントロール配列を持つことは可能ですか?

    Excel2002、OSはXPです。 VBではコントロールに配列を持つことが出来ましたが、 VBAでコントロール配列を持つことは可能でしょうか? やりたいことはユーザーフォームにラベルを100個ぐらい貼り付けて、 テキストボックス入力した値がCell(i,1)と等しければ、 i番目のラベルのCaptionに文字を入力したい。という感じです。 もしVBのようにコントロール配列を持てれば、 If TextBox1.text=Cells(i,1) Then Label(i).Caption="~~" という風に出来るのですが、どうも配列の設定がVBのようにできません。 プロパティにINDEXが無いですし、オブジェクト名を同じにしたら エラーとなってしまいますし。。 もし出来ないのであれば、何か回避策のようなものはないでしょうか? 力技で100個IFを書けば出来ることは出来るのですが・・ If TextBox1.text=Cells(i,1) Then If i = 1 Then Label1.Caption="~~" ElseIf i=2 then Label2.Caption="~~" ・・・・

  • VB.NETでテキストボックスをコントロール配列のように扱いたいんですが

    VB.NETではコントロール配列はサポートされていませんが、TextBox1~TextBox10を配列のように扱う方法はありますか?ちなみに、以下の方法ではエラーとなりました。 Controls("TextBox" & i).Text でTextの内容を取得しようとした よろしくお願いします。

  • コントロールに連続して名前をつけたいのですが

    いつもお世話になっております。 VB入門者です。 VB2005なのですが、 たとえばtextboxにtextbox1~txtbox30と名前をつけたいときに、 一つ一つ名前を変えていく以外に簡単に出来る方法は ないのでしょうか。 教えてください。 よろしくお願いします。

  • 配列化

    VB2005においてlabel,textboxといったコントロールを配列化したいのですがどうすればいいでしょうか? VB6では下記のコードが成り立ちますが・・・ For i=0 to 3 label(i).caption = str(i) Next このようにコントロール自体を配列化することは出来るのでしょうか?

  • Excel97のVBAでの、配列について。

    TextBoxを直接配列にすることは出来ますか? VBでは、プロパティのINDEXか何かで設定ができたかと思います。 VBAではそれらしきものが見つかりません。 TextBox1(0).text・・・ TextBox1(1).text・・・こんなふうに。 変数を配列にしてSetするよりも簡潔に出来る方法を教えてください。