タイトル : Re^13: 「解決」追加Formの移動で描いた図が消える 投稿日 : 2009/08/26(Wed) 14:29 投稿者 : 魔界の仮面弁士
そのコードだと、まだ問題を抱えています。 > Dim g11 As Graphics = AutoRedraw (Form3.PictureBox1) ではなく、 Using g11 As Graphics = AutoRedraw (Form3.PictureBox1) g11.DrawLine( … ) End Using といったコードに変更する必要があります。 Graphics クラスというのは、使い終わったら「Dispose メソッド」で破棄しなければ なりません。そして、確実に Dispose するための仕組みがこの Using ブロックです。 たとえば、『Graphics.FromImage で取得した Graphics』ですとか、 『CreateGraphics メソッドで取得した Graphics』のように、 自身で作成した Graphics に対しては、きちんと後片付けする必要があります。 # ただし、自分で作成したものでない場合(たとえば、Paint イベントの e.Graphics)や、 # まだ使用中のオブジェクトの場合は、Dispose してはいけません。 なお、Graphics クラスの他にも、Bitmap クラスや Pen クラスなどが Dispose を必要としていますので、後始末を忘れないようにしてください。 > chime chime さんではなく、 chime さんだったような…? |