- 締切済み
VB A,Bフォームから同一Cフォームを呼び出し呼出元によってCの処理を変えたい
環境 WindowsXP SP3.0 VB6.0 宜しくお願いします。 表題通り、A.frm,B.frmという異なったフォームがあり、A.Bの処理で同一C.frmを C.Show 1 とモーダルで表示しています。 ここで、呼び出し元A,Bによって、C内部の処理を変えたいのですが Cの呼び出し元がAなのかBなのか、判定させるよいルーチンが思いつきません。 CのForm.Loadの引数に与えようと考えたのですが当然構文エラーになります。 Public変数を宣言して適当なパラメータを格納しC内で判定すればよい とは思うのですが、それはなるべく避けたいのです。 プロジェクト的には、A.vbpとB.vbpにフォームとしてC.frmを取り込んでいます。 よいアイデアや検索のヒントがあればご教授ください。
- みんなの回答 (3)
- 専門家の回答
みんなの回答
- don_go
- ベストアンサー率31% (336/1059)
ANo.2 訂正 Public Property Get Mode() As Integer
- don_go
- ベストアンサー率31% (336/1059)
FormC Private mnMode As Integer Public Property Let Mode (n As Integer) mnMode = n End Property Public Property Get Mode As Integer mode = mnMode End Property FormA Dim frmC As FormC Set frmC = New FormC frmC.Mode = n frmC.Show 1 Debug.Print frmC.Mode
- mindatg
- ベストアンサー率48% (110/227)
長らくVB触ってないのでアテになるか分かりません 何をどのタイミングでしたいのか分からないのでアテずっぽうで適当に考えてみました。 これもpublic変数持たせるのと大差無い気もしますが '''FromC側 Private yobidashi as String Public Sub Hantei(hikisu as String) yobidashi = hikisu End Sub '''FromAとB dim c as FormC set c = new Fromc ' ここでInitialize c.Hantei("A") ' c.Hantei("B") c.show 要するにFormを表示する前にごにょごにょする。