投稿者 魔界の仮面弁士  (社会人) 投稿日時 2021/11/17 11:17:52
> Private Sub Button1_Click_1(sender As Object, e As EventArgs) Handles Button1.Click
>  Dim img As New Bitmap(Me.Width, Me.Height)
(中略)
>  '作成した画像を表示する 
>  Dim form As Form
>  form = Me
>  form.BackgroundImage = img

このコードですと、クリックが複数回行われた場合、
前回クリックした時に割り当ててあった BackgroundImage に対して
明示的な Dispose が行われていないことになってしまいます。


クリックするたびに、新しい Bitmap に差し換えるのであれば、
不要になった以前の古い Bitmap を Dispose することが望ましいです。
放っておいても GC はされますが…明示的に処分できる状況ならば、
きちんと片づけた方が良いですね。

あるいは、毎回 Bitmap を作り直すのではなく、
現在表示中の Bitmap に対して重ね描きするのであれば、
Graphics.FromImage(BackgroundImage) に対して描いて Invalidate します。