タイトル | : Re: 疑似配列 |
記事No | : 14000 |
投稿日 | : 2009/09/01(Tue) 17:58 |
投稿者 | : 魔界の仮面弁士 |
> フォームにスイッチを100個配置したいので、疑似配列を用いて作りたいのですが、
VB6 の場合には、コントロール配列を使った方が簡単かと思いますよ。
開発時に、ボタン(Command1)の Index プロパティに 0 を指定してみてください。 そうすると、コントロール配列が生成されます。
あとはそれを For p = 1 To 10 Load Command1(p) Command1(p).Caption = "ボタン" & CStr(p) Command1(p).Move Command1(p - 1).Left, Command1(p - 1).Top + Command1(p - 1).Height Command1(p).Visible = True Next のようにすれば、実行時に Load/Unload で増減させることもできます。
あるいは実行時に増減させるのではなく、開発時に、 その Command1(0) を Ctrl+C と Ctrl+V でコピーしていけば、 「Index のみが異なる同名のコントロール」が用意されますので、それを For p = 0 To 99 Command1(p).Caption = "ボタン" & CStr(p) Next あるいは Dim cmd As VB.CommandButton For Each cmd In Me.Command1 cmd.Caption = "ボタン" & CStr(cmd.Index) Next などのようにしてプログラムから処理できるようになります。
> 内容を理解していなくてすみませんが、MyCmdでエラーしています。 この方法の場合には、MyCmd という名前の クラスモジュールを用意する必要があります。 Excel 側のソースが残っていれば、そのクラスモジュールにも幾つかのコードが 記述されているかと思いますので、調べてみてください。
|