[
板情報
|
カテゴリランキング
]
したらばTOP
■掲示板に戻る■
全部
1-100
最新50
|
メール
| |
デリゲートについて(VB2005)
2
:
igoten
:2009/04/22(水) 09:51:49
こんにちは、
デリゲートがわからないと言う質問が圧倒的に多いですね。
長くなりますので分けて書きます。
まず基本的に次のことを抑えておきましょう。
マルチスレッドの場合(RS-232Cの受信はマルチスレッド
で行われます。)はメインスレッドのTextBoxにセカンドスレッド
から書き込めません、なぜならその様なルールにしてあるからです。
ではメインスレッドのサブルーチン(メソド)を呼び出すことは出来るのでしょうか?
もしこれが出来れば、そのサブルーチンの中にTextBoxに書き込む動作を
埋め込んでおけば良いと言うことになります。
答えは条件付きでYesです。
条件は2つあります1つはサブルーチンをアドレスで呼び出すこと、
2つ目はサブルーチンをセカンドスレッドではなくてメインスレッドから
呼び出すことです。
サブルーチンをアドレスで呼び出す方法がデリゲートです。
'メインスレッドに書き込むデリゲート
Delegate Sub dlgAddText(ByVal str As String)
これは引数に1つのStringを取って、アドレスでサブルーチンを
呼び出しますよと言う宣言です。
このように宣言すると戻り値がなくStringの引数を一つとるサブルーチン
なら何でも呼び出すことが出来ます。
新着レスの表示
名前:
E-mail
(省略可)
:
※書き込む際の注意事項は
こちら
※画像アップローダーは
こちら
(画像を表示できるのは「画像リンクのサムネイル表示」がオンの掲示板に限ります)
スマートフォン版
掲示板管理者へ連絡
無料レンタル掲示板