掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
シェープの描画速度を早めるには? (ID:80286)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
レスありがとうございます。 とりあえずこんな感じなんですが。 (折り返しが見づらいと思いますがご容赦ください。) MouseMoveイベント内です。 ------------------------------- If ((Button = vbRightButton) Or Button = vbRightButton + vbLeftButton)) And _ (picScanImg.Picture) <> 0 And _ (gRightBtnFlg = True) Then flg = True '直前の罫線を消す If LineDrawFlg = True Then With BackPos picScanImg.Line (.right, .bottom)-(.left, .top), RGB(255, 0, 0), B picACCImg.Line (.right, .bottom)-(.left, .top), RGB(255, 0, 0), B picJPEGImg.Line (.right, .bottom)-(.left, .top), RGB(255, 0, 0), B End With End If '現在の罫線を描画 With RectPos picScanImg.Line (X, Y)-(.left, .top), RGB(255, 0, 0), B picACCImg.Line (X, Y)-(.left, .top), RGB(255, 0, 0), B picJPEGImg.Line (X, Y)-(.left, .top), RGB(255, 0, 0), B End With '描画フラグを立てる。 LineDrawFlg = True '現在の座標を保持 BackPos.right = X BackPos.bottom = Y flg = False Exit Sub End If ------------------------------- 右クリックで描画を行ってます。 ソース出してるのにナンですが、考察としては、 マウスを動かしている際、AにはLine()で描画する処理に加えて、 おびただしい数の、MouseMoveイベントが発行されてます。 その反面、B・Cには、Line()で描画の処理のみ発行されるので、 処理のオーバーヘッド(というんですかね?)が発生するために、 Aの描画が送れてガクガクになるんでは・・・と思ったのですが・・・ どうなんですかね?
←解決時は質問者本人がここをチェックしてください。
戻る
掲示板システム
Copyright 2020 Takeshi Okamoto All Rights Reserved.