VB6.0用掲示板の過去のログ(No.1)−VBレスキュー(花ちゃん)
[記事リスト] [新規投稿] [新着記事] [ワード検索] [過去ログ] [管理用]

投稿日: 2003/06/05(Thu) 21:38
投稿者シャフト
Eメール
URL
タイトルRe: マルチタスクを判別して処理をするには?

Form1にはCommand1とCommand2が貼り付けてあり、
Form2にはtext1が貼り付けてあるのですよね。

Private Sub Command2_Click()
Dim frm As New Form2
frm.text1 = "hello"
frm.Show    '←追加
end Sub

と、frm.Showを追加すれば新しくForm2が作成され、
Form2のtext1に"hello"と表示されると思います。

ただ、おそらくやりたいのはCommand1で作成したForm2の内の
いづれかのtext1に"hello"と表示させたいのだと思うので、
サンプルとして下の様にしてみてはどうでしょう?
Form1にLabel1とText1を貼り付けてください。

Private Sub Command1_Click()
    Dim frm As New Form2
    Static lForm2Num As Long
    
    frm.Show
    
    lForm2Num& = lForm2Num& + 1&
    Me.Label1.Caption = CStr(lForm2Num&)
    
End Sub

Private Sub Command2_Click()
    Dim frm As Form2
    Dim lShowForm2Num As Long
    
    lShowForm2Num& = CLng(Me.Text1.Text)
    If lShowForm2Num& > CLng(Me.Label1.Caption) Then
        Call MsgBox("指定番号のフォームは作成されていません", vbOKOnly)
        Exit Sub
    End If
    Set frm = Forms(lShowForm2Num&)
    frm.Text1 = "hello"
    
End Sub

Form1のラベルに表示されている数字より小さい数字を
Form1のテキストボックスに入力してください。


- 関連一覧ツリー (★ をクリックするとツリー全体を一括表示します)

- 返信フォーム (この記事に返信する場合は下記フォームから投稿して下さい)

- Web Forum -