オブジェクトを引数で渡す


みー  2003-05-22 01:10:18  No: 107220

こんにちは。
オブジェクトを引数で渡したいのです。

クラスモジュールで、
 public sub AAA(objButton As Object,objLabel As Object)
と引数にコマンドボタンとラベルのオブジェクトを受け取りたいのですが、

この「AAA」を呼ぶフォームモジュールで、
画面にcmdButtonというコマンドボタンと、
lblMessageというラベルが置かれている画面に、
 Call AAA(cmdButton,lblMessage)
と書いたのですが、オブジェクト自信が引数に渡されません。
どうコーディングすればオブジェクトが渡せるのでしょうか・・。
初歩的な質問のような気がしますが、よろしくお願いします。


nanashi  2003-05-22 01:46:58  No: 107221

テストしてみましたが、そのやり方で普通に渡せます。

> Call AAA(cmdButton,lblMessage)
まさかとは思いますがこのまんまの記述じゃないですよね?

クラスモジュールなので

    Call Class1.AAA(cmdButton,lblMessage)

というような記述になります。
「Class1」の部分は実際にクラスモジュールのインスタンスを作成した時のオブジェクト名になります。


みー  2003-05-22 02:06:33  No: 107222

すみません、クラスモジュールじゃなくて、標準モジュールでした・・。

フォームモジュールで"AAA"をCALLするところでブレイクをかけて、cmdButtonのところにカーソルを当ててみると、「False」が表示され、lblMessageのところにカーソルを当てるとlblMessageのCaptionの内容が表示されます。
これはオブジェクトを渡してる感じではないですよね・・。


イトウ  2003-05-22 02:48:20  No: 107223

途中の発言ですみませんが、

なんらかのエラーが発生するのでしょうか?
Object型はVB6の場合は、オブジェクト全般を定義するものですので
クイックヒントの内容は未定義のはずです。

ちなみに、VBA for excel だと何の以上もなくできましたけれど…


nanashi  2003-05-22 03:24:32  No: 107224

標準モジュールでも何も問題無く動きます。

実際にオブジェクトが渡されているかどうか試した上での発言でしょうか?
そのプロシージャ内でCaptionプロパティなどを変えてみてください。


※返信する前に利用規約をご確認ください。

※Google reCAPTCHA認証からCloudflare Turnstile認証へ変更しました。






  このエントリーをはてなブックマークに追加