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

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

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

Re[2]: インクのちらつきについて


(過去ログ 36 を表示中)

[トピック内 3 記事 (1 - 3 表示)]  << 0 >>

■18360 / inTopicNo.1)  インクのちらつきについて
  
□投稿者/ よこやま (21回)-(2008/05/13(Tue) 18:00:52)

分類:[.NET 全般] 

こんにちはよろしくお願いします。

環境
c#
vs2005
Microsoft Tablet PC Platform SDK


http://bbs.wankuma.com/index.cgi?mode=al2&mo=17666&namber=17579&space=75&page=0
今、この記事を参考にして透明なフォームにInkPicterで手書きができる用になりました。

しかし、書いた量が多くなればなるほど画面のちらつきがひどくなります。
再描画が原因だと思われます。
ダブルバッファを使ってみたりしましたが、状況は改善されません。


ちらつきを抑える(なくす?)良い方法がありましたらお願いします。



引用返信 編集キー/
■18391 / inTopicNo.2)  Re[1]: インクのちらつきについて
□投稿者/ やじゅ (365回)-(2008/05/13(Tue) 23:13:48)
やじゅ さんの Web サイト
No18360 (よこやま さん) に返信
> しかし、書いた量が多くなればなるほど画面のちらつきがひどくなります。
> 再描画が原因だと思われます。
> ダブルバッファを使ってみたりしましたが、状況は改善されません。
>

問題として、どこの部分が駄目か切り分けられているのでしょうか?
Opactity = 100% にしたら問題ないのか? とか

引用返信 編集キー/
■18475 / inTopicNo.3)  Re[2]: インクのちらつきについて
□投稿者/ よこやま (22回)-(2008/05/14(Wed) 13:33:29)
返信ありがとうございます

> 問題として、どこの部分が駄目か切り分けられているのでしょうか?
> Opactity = 100% にしたら問題ないのか? とか
>


問題なのは、フォーム同士のinkの受け渡しだと思われます。

透明なイベントを受け取るフォーム(フォームAとします)に書かれたinkデータは毎回、表示用のフォーム(フォームBとします)にデータを送っています。

その際、フォームBに(正確にはフォームBに張られたinkpicterに)表示されていたinkデータを一度消去し、新しくフォームAからデータを取得するように処理しています。
データを消去している理由は、渡す時に一括で渡しているので、前のデータを消去しなければそれの上にそのまま表示するため、データ量が急激に増えるからです。
なので、消去するINKデータの量、表示するべきINKの量が増えると処理時間が増え、ちらつくのだと思います。
ためしにフォームAのOpactityを100%にすると、ちらつくことはありませんでした。

自分としては、
フォームAに書いた後、データをフォームBに渡すのではなく、
フォームAに書かれたというイベントをそのままフォームBに渡して表示すればいいのかな?と思ったのですが、それを実現する方法が見つかっていない状態です。

良い解決方法などがあればお願いします。
引用返信 編集キー/


トピック内ページ移動 / << 0 >>

このトピックに書きこむ

過去ログには書き込み不可

管理者用

- Child Tree -