タグ

Invokeに関するshokaiのブックマーク (7)

  • s.h.log: C#2.0 - 無名関数をControl.Invoke()する

    参考:ControlクラスのInvokeメソッドで匿名メソッドを使うには?[2.0のみ、C#] - @IT GUI描画とは別スレッドから、GUI要素を書き換える時 this.Invoke((MethodInvoker) delegate() { /* GUIの操作*/});かMethodInvoker func = delegate() { /*GUIの操作*/ }; this.Invoke(func); でいい。 例えばtry{ this.Invoke((MethodInvoker) delegate() { textBoxMsg.Text += "hogehoge"; }); } catch(Exception ex){ Console.WriteLine(ex.Message); }とか。 GUIと別スレッドからGUI要素を書き換える時は(例えばSocket通信を受信

  • ControlクラスのInvokeメソッドで匿名メソッドを使うには?[2.0のみ、C#] - @IT

    C# 2.0では「匿名メソッド」と呼ばれる機能が追加され、それまで複数のメソッドに分けて記述しなければならなかった処理を1つにまとめることができる。 しかし、Controlクラス(System.Windows.Forms名前空間)のInvokeメソッドのパラメータとして匿名メソッドを記述するとコンパイル・エラーとなってしまう。 匿名メソッドの基的な使い方 例えば、Threadクラス(System.Threading名前空間)により別のスレッドで処理を実行する場合、C# 1.xでは次のように記述していた。 void Run() { ThreadStart ts = new ThreadStart(worker); Thread t = new Thread(ts); t.Start(); } void worker() { Console.WriteLine("別スレッドで実行中"); }

  • s.h.log: C#2.0 - PhidgetRFIDkitを使ってみる (あとDelegateとかInvokeとか)

    « 新年度に向けて? | メイン | C#のDelegateのカプセル化 » 2006年03月18日 ■ C#2.0 - PhidgetRFIDkitを使ってみる (あとDelegateとかInvokeとか) [Programming&Electronics][Technology] あーこれでようやくPerlJavaScriptとDSLiteの世界にいけるな。 PhidgetsのRFIDキットをGroupLab.Phidgets.NET Libraryで動かしてみた。家のPhidgets.comの方にも、PhidgetWebServiceが必要な.NET用ライブラリがあるが、GroupLabのは単独で動く。 あとDelegateとかInvokeとか、VisualStudio2005にしてから制限が厳しくなったThread関連についても下の方に書いた。 単純なRFIDリーダのステータス

    shokai
    shokai 2007/05/11
    これからにござる…これからに…delegateの理解が怪しいがとりあえずスレッド越しUI操作はできた。よかった。
  • Control.Invokeメソッド

    呼び出されるデリゲートからの戻り値。デリゲートに戻り値がない場合は null。 例 次のコード例は、デリゲートを含むコントロールを示しています。 デリゲートはリスト ボックスに項目を追加するメソッドをカプセル化し、このメソッドはフォームの基になるハンドルを所有するスレッドで実行されます。 ユーザーがボタンをクリックすると、 Invoke デリゲートが実行されます。 /* The following example demonstrates the 'Invoke(Delegate*)' method of 'Control class. A 'ListBox' and a 'Button' control are added to a form, containing a delegate which encapsulates a method that adds items to the

    Control.Invokeメソッド
    shokai
    shokai 2006/03/18
    コントロールの基になるウィンドウ ハンドルを所有するスレッド上で、指定したデリゲートを実行します
  • Moved

    This URL was moved The requested URL http://web.sfc.keio.ac.jp/~t03792sh/archives/2006/03/c20_-_phidgetrf.html was moved to http://web.sfc.keio.ac.jp/~shokai/archives/2006/03/c20_-_phidgetrf.html.

    shokai
    shokai 2006/03/18
    これからにござる…これからに…delegateの理解が怪しいがとりあえずスレッド越しUI操作はできた。よかった。
  • デリゲート

    概要 デリゲート(delegate: 代表、委譲、委託)とは、メソッドを参照するための型です。 C言語やC++言語の勉強をしたことがある人には、 「デリゲートとは関数ポインターや関数オブジェクトをオブジェクト指向に適するように拡張したもの」 と言った方が分かりやすいかもしれません。 デリゲートは用途も関数ポインターとほとんど同じで、 述語やイベントハンドラ(「イベント」で説明)等に利用します。 ただし、C言語の関数ポインターと違い、 インスタンスメソッドを参照したり、 複数のメソッドを同時に参照する事が出来ます。 delegate(委譲)という言葉のニュアンスとしては、 「他のメソッドに処理を丸投げするためのオブジェクト」というような意味です。 イベントが起きたときのイベントハンドリングをどのメソッドに丸投げ(委託)するかを指示するためなどに使われます。 ポイント C# では、メソッドも他

    デリゲート
    shokai
    shokai 2006/03/18
    C#2.0では = new デリゲート名(メソッド名);じゃなくて = メソッド名;でいける
  • C#で作るWindowsアプリ -スレッドを使う-

    1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127

  • 1