同じ処理をする場合まとめるには?

解決


ひろつの  2001-10-15 14:51:49  No: 103667  IP: [192.*.*.*]

すいません初心者なのですが・
以下の様にテキストボックスが9つあるんですけど、入力制限は同じなので、
全てが同じ記述になるのですが、まとめる方法ってあるんですか?
誰か教えて下さい。

Private Sub Text1_KeyPress(KeyAscii As Integer)
    WKeyAscii = KeyAscii
    InpChkAscii
    If WKeyAscii = 0 Then
        KeyAscii = Clear
    End If
End Sub

Private Sub Text2_KeyPress(KeyAscii As Integer)
    WKeyAscii = KeyAscii
    InpChkAscii
    If WKeyAscii = 0 Then
        KeyAscii = Clear
    End If
End Sub
永遠と9つ続きます

編集 削除
Bit  2001-10-15 16:11:02  No: 103668  IP: [192.*.*.*]

TextBox9こを配列にしたら大丈夫だと思います
(一応下に書きます)

Private Sub Text1_KeyPress(Index As Integer, KeyAscii As Integer)
WKeyAscii = KeyAscii
InpChkAscii
If WKeyAscii = 0 Then
KeyAscii = Clear
End If
End Sub

編集 削除
myu-po  2001-10-15 16:40:27  No: 103669  IP: [192.*.*.*]

テキストボックスの「オブジェクト名」を同じにすると
コントロール配列にするか聞かれるので、「はい」にします。
すると、「Index]に番号が振られますので(そのときテキストボックスのプロパティは、Text1(0)などとなります)
そうすれば、Bitさんが書いたように、
Private Sub Text1_KeyPress(Index As Integer, KeyAscii As Integer)
と、Indexが出てきます。このときのIndexがテキストボックスのIndexに対応しています。

編集 削除
ひろつの  2001-10-15 17:44:19  No: 103670  IP: [192.*.*.*]

ありがとうございました。bitさん、myu-poさん
かなりすっきりしました。
とっても初心者なのでこれからもよろしくお願いします。

編集 削除