|
Top / クラスプログラミング / 07.動的にイベント処理を置き換える
あるフォームを、2つのプログラムで共用したい場合があるとします。 コマンドボタンを押したら、片方のプログラムでは、足し算の処理、もう一方のプログラムでは、掛け算の処理を行いたいといった場合、クラスモジュールを利用することで、動的に処理を振り分けることができます。 Form1 Option Explicit
Public objExecute As Object
Private Sub Command1_Click()
objExecute.Value1 = Val(Text1.Text)
objExecute.Value2 = Val(Text2.Text)
objExecute.Exec
MsgBox objExecute.Result
End Sub
Class1 Option Explicit
Public Value1 As Double
Public Value2 As Double
Public Result As Double
Public Sub Exec()
Result = Value1 + Value2
End Sub
Class2 Option Explicit
Public Value1 As Double
Public Value2 As Double
Public Result As Double
Public Sub Exec()
Result = Value1 * Value2
End Sub
以上の部品を用意したら、あとは、次のようにすることで、処理を振り分けられます。 Project1 Sub Main()
Load Form1
Set Form1.objExecute = New Class1
Form1.Show
End Sub
Project2 Sub Main()
Load Form1
Set Form1.objExecute = New Class2
Form1.Show
End Sub
05.Implementsを使うとさらに良し、です。 |
||