• ベストアンサー

.NETでの配列について質問です(VB)

最近、VisualBasic2008へ開発環境を移行しました。とても素朴な疑問なのですが、コントロールは配列にならないのでしょうか?(ButtonやLabelなど) VB6.0だと同一フォームでのコンロール貼り付け数に制限があったりしたと思うのですが・・・ 負荷にならないのでしょうか? 基本的な質問ですみません。

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

  • ベストアンサー
回答No.2

Private Buttons As Button() と宣言しておいて、 フォームロードイベント時などで Buttons = New Button(2) {} Buttons(0) = Button1 Buttons(1) = Button2 Buttons(2) = Button3 と書いとけば、 Buttons(1).Text = "test" みたいにアクセスできますよ。 そりゃあ、たくさんコントロールを貼れば貼るほど負荷になりますよ。

komorebi88
質問者

お礼

参考にさせて頂きます!ありがとうございます!

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

その他の回答 (1)

  • MARU4812
  • ベストアンサー率43% (196/452)
回答No.1

> コントロールは配列にならないのでしょうか? コントロール配列は廃止されました。 しかし、配列の型をButtonやLabelなどで指定すれば、配列として扱いたい コントロールを格納できます。機能的にはこれで代用できます。 > VB6.0だと同一フォームでのコンロール貼り付け数に制限があったり > したと思うのですが・・・ 負荷にならないのでしょうか? 質問の意図が分かりません。VB6.0 での仕様上は 254 がコントロールの 最大数でした。コントロール配列では各コントロールが同じコントロール名 を共有しているので、コントロール配列ごとにコントロール名は 1 つと 数えられました。 しかし、実際にはシステムリソースの都合で 254 個まで置けない場合が あります。つまり、同一画面に大量のコントロールを置く時点で負荷は 大きく、制限が明示的であろうが無かろうが有限なメモリ上で実行する 以上、メモリを大量に消費するようなプログラムであれば負荷が高く なるのは当然であり、コントロール配列が使えても、実際のインスタンス は別になるわけですから、負荷は高いはずです。 貼り付け数の制限やコントロール配列が使えるかどうかは負荷とは直接 関係ないと思いますが?

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

関連するQ&A