- ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:VB.NET フォーム上に描いたグラフィックのクリア方法)
VB.NETでフォーム上に描いたグラフィックを消去する方法
このQ&Aのポイント
- 最近、VB6からVB.NET 2003へプログラムの移行作業を始めたものです。.NETでフォームに描いたグラフィック(線や円など)を消去する方法を教えてください。
- VB6でしたらForm**.Cls だけで消えるのですが、VB.NETではClearメソッドを使用するとありますが、うまく動作しません。例えば、以下の簡単な例で消去する方法を教えてください。
- Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click ClearScreen(e) End Sub
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
お望みのことをするには、Button2のClick時にFormのRefreshメソッドを呼んであげればOKです。そうすれば、フォームが再描画されて描画済みのグラフィックが消去されます。 コードとしてはこんな感じです。 Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click Dim grph As System.Drawing.Graphics grph = Me.CreateGraphics grph.DrawLine(Pens.Red, 50, 25, 200, 150) End Sub Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click Refresh() End Sub
お礼
有難うございました! 確かにうまく行きました。 Clearメソッドは背景色が決められたもの、(そうでなくても吸い上げればよいとは思いますが)に対してはうまく動くようです