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

投稿時間:2003/04/15(Tue) 16:58
投稿者名:宝一
Eメール:
URL :
タイトル:
子フォームで親フォームのボタンクリックの認識
親フォームのピクチャーボックス内にコマンドボタンが数個あり、ボタンを押下したら
子フォーム上でボタンに対応した処理が走るようにしたいのですが、親フォームで押下されたボタンを子フォームで認識するにはどのようにしたらよいのでしょうか?
子フォームは数種類あり、それぞれ処理が違います。
わかりずらい説明で申し訳ございませんが、よろしくお願いします。
環境はWindowsXp+VB6.0です。

投稿時間:2003/04/15(Tue) 19:59
投稿者名:シャフト
Eメール:
URL :
タイトル:
Re: 子フォームで親フォームのボタンクリックの認識
> 親フォームのピクチャーボックス内にコマンドボタンが数個あり、ボタンを押下したら
> 子フォーム上でボタンに対応した処理が走るようにしたいのですが、親フォームで押下されたボタンを子フォームで認識するにはどのようにしたらよいのでしょうか?
> 子フォームは数種類あり、それぞれ処理が違います。
> わかりずらい説明で申し訳ございませんが、よろしくお願いします。
> 環境はWindowsXp+VB6.0です。

MDIでしょうか?MDIの作りは
子フォームが親フォームのイベントを認識するのではないですよ。
親フォームのイベントに対して子フォームを操作するイメージです。

ボタンが3個あり、それぞれに対応した子フォームが3つあれば
Select Case Index
    Case 1
        Call Form1.メソッド
    Case 2
        Call Form2.メソッド
    Case 3
        Call Form3.メソッド
End Select
とすればよいのではと思います。

投稿時間:2003/04/16(Wed) 09:05
投稿者名:宝一
Eメール:
URL :
タイトル:
Re^2: 子フォームで親フォームのボタンクリックの認識
> MDIでしょうか?MDIの作りは
> 子フォームが親フォームのイベントを認識するのではないですよ。
> 親フォームのイベントに対して子フォームを操作するイメージです。
ということは、子フォームからは親フォームのボタンを押下したというイベントを
認識することはできないのでしょうか?

投稿時間:2003/04/16(Wed) 10:29
投稿者名:nanashi
Eメール:
URL :
タイトル:
Re^2: 子フォームで親フォームのボタンクリックの認識
> > 親フォームのピクチャーボックス内にコマンドボタンが数個あり、ボタンを押下したら
> > 子フォーム上でボタンに対応した処理が走るようにしたいのですが、親フォームで押下されたボタンを子フォームで認識するにはどのようにしたらよいのでしょうか?
> > 子フォームは数種類あり、それぞれ処理が違います。
>

こういうことですかねー?

'子フォーム--------------------------------
Option Explicit

Private WithEvents cmdParent As CommandButton

Private Sub Form_Load()
    Set cmdParent = MDIForm1.Command1
End Sub

Private Sub cmdParent_Click()
    Call MsgBox("親フォームのコマンドボタンが押されました。")
End Sub


ちなみに親フォームのCommand1にクリックイベントが記述されてた場合、
親フォームのイベントが先に走って、その後cmdParentのクリックイベントが起こります。

投稿時間:2003/04/16(Wed) 11:42
投稿者名:宝一
Eメール:
URL :
タイトル:
Re^3: 子フォームで親フォームのボタンクリックの認識

> '子フォーム--------------------------------
> Option Explicit
>
> Private WithEvents cmdParent As CommandButton
>
> Private Sub Form_Load()
>     Set cmdParent = MDIForm1.Command1
> End Sub
>
> Private Sub cmdParent_Click()
>     Call MsgBox("親フォームのコマンドボタンが押されました。")
> End Sub

nanashi様、有難う御座います。まさにこういうことがしたかったのです。
わがままついでにもう1つお聞きしたいのですが、
コマンドボタンが配列であった場合はどのようにすればよろしいのでしょうか?