C# と VB.NET の質問掲示板

わんくま同盟

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト


(過去ログ 51 を表示中)
■27701 / )  Re[10]: C#タイマーでのpictureBox.Image更新nitu
□投稿者/ 倉田 有大 (337回)-(2008/11/12(Wed) 16:56:24)
No27697 (フミ さん) に返信
> ■No27663(Jitta様)に返信
>
> ご助言ありがとうございます!
> 教えていただいた
> http://msdn.microsoft.com/ja-jp/library/ms171728.aspx
> を参考にして■No27657のプログラムは
> エラー(>System.InvalidOperationException: オブジェクトは現在他の場所で使用されています。)
> がでなくなりました。
> 下記のように修正しました。
> ピクチャーボックスにデリゲートを通じて絵をわたしました。
>
> あと最初の質問時のタイマーのやつですが、
> windows.forms.timerだと処理中に操作ができなくなってしまいました。
> 無謀な時間での大きいサイズの絵の更新の問題は置いておくとして、
> タイマーイベントで描画中にも画面にあるボタンを押したりするには、
> windows.forms.timerだとダメですか??

timerの処理中というより、Invokeでオーナー スレッド(フォームを作成したスレッド)に処理が渡っています。
setPicture関数抜けないと、画面の操作ができないですよ。
普通は、setPictureの処理を軽くするように作るんじゃないかな。
この場合、DoEvents使うとどうなるだろう?

別スレッドでコントロールを作成して、そのスレッドでコントロールする手はあるのかな(他のスレでも話題になってますが)
その場合は、フォームにそのコントロールはりつけられるのだろうか?^^;もうわからん

#ちょw おーなーすれっどとカタカナでかこうとしたら、なーす(カタカナ)は投稿出ませんと出たw
返信 編集キー/


管理者用

- Child Tree -