[リストへもどる]
一括表示

投稿時間:2003/10/21(Tue) 17:31
投稿者名:トミー
Eメール:
URL :
タイトル:
オブジェクト名??
ボタンを押すと、ボタンがどんどんフォームに張り付いていくプログラムを組んだのです
が、その新しくできたボタンのサイズをかえたり、ボタンをドラッグあんどドロップで動
かしたりなどはできないのでしょうか?

はじめからツールでフォームに張り付けているわけではないので、
普通にプログラムを書くとエラーになってしまい、
どうしたらいいのかよくわかりません。

ボタンを張り付ける度にオブジェクト名を表示させているので、オブジェクト名はわかる
のですが、どんな風にこれを使っていいのやら、はたまた使わないのか…。
本当に困っているので助けてください。

投稿時間:2003/10/22(Wed) 00:26
投稿者名:花ちゃん
Eメール:
URL :
タイトル:
Re: オブジェクト名??
> ボタンを押すと、ボタンがどんどんフォームに張り付いていくプログラムを組んだのです
> が、その新しくできたボタンのサイズをかえたり、ボタンをドラッグあんどドロップで動
> かしたりなどはできないのでしょうか?

デザイン時に表示させているボタンなら上記の事はできるのですか?
それなら、最初に1個だけ配列で作成しておき、それを増やすようにすればいいかと思いますが。

投稿時間:2003/10/24(Fri) 11:02
投稿者名:トミー
Eメール:
URL :
タイトル:
う〜ん
ちょっとよくわからないのですが、ボタンの配列ってことですか?

投稿時間:2003/10/24(Fri) 11:39
投稿者名:花ちゃん
Eメール:
URL :
タイトル:
Re: う〜ん
> ちょっとよくわからないのですが、ボタンの配列ってことですか?

この掲示板のNo.5999の投稿を見て下さい。

Form 上に CommandButtonを1個貼付け、プロパティウィンドウの
Indexプロパティを0に設定して下さい。
そして書きコードをペーストして試して見て下さい。

Option Explicit
Private Sub Form_Load()
    Dim i As Long
    'Command1(0) の下に新たにCommandButtonが3個配置されます。
    For i = 1 To 3
        Load Command1(i)
        Command1(i).Move Command1(0).Left, (i * 500) + Command1(0).Top, Command1(0).Width, Command1(0).Height
        Command1(i).Visible = True
    Next i
End Sub
Private Sub Command1_Click(Index As Integer)
    Dim i As Long
    If Index = 2 Then
        'Command1(2) をクリックすると横幅が広くなります
        For i = 0 To 3
            Command1(i).Width = Command1(i).Width * 1.2
        Next i
    ElseIf Index = 3 Then
        'Command1(3) をクリックすると横幅が狭くなります
        For i = 0 To 3
            Command1(i).Width = Command1(i).Width * 0.8
        Next i
    End If
End Sub