0

ここで助けを求めて、私は PB1.Location.X = 145 、 PB1.Location Y = 7 および btnTakePic という名前のボタンを持つ PB1 という名前の透明なピクチャ ボックス (transparencyKey として fucshia を使用) を持っています。コードは次のとおりです。

    Private Sub btnTakePic_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnTakePic.Click
    Dim Bound As Rectangle
    Dim Pic As Graphics
    Dim screenshot As System.Drawing.Bitmap
    Bound = Screen.PrimaryScreen.Bounds
    screenshot = New System.Drawing.Bitmap(PB1.Bounds.Width, PB1.Bounds.Height, System.Drawing.Imaging.PixelFormat.Format32bppPArgb)
    Pic = Graphics.FromImage(screenshot)
    Pic.CopyFromScreen(CInt(LocPBX.Text), CInt(LocPBY.Text), 0, 0, Bounds.Size, CopyPixelOperation.SourceCopy)
    PB1.Image = screenshot
    PB1.SizeMode = PictureBoxSizeMode.StretchImage
End Sub

Private Sub Main_LocationChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.LocationChanged
    LocX.Text = Me.Location.X
    LocY.Text = Me.Location.Y
    LocPBX.Text = Val(PB1.Location.X) + Val(LocX.Text) + 3
    LocPBY.Text = Val(PB1.Location.Y) + Val(LocY.Text + 25)
End Sub

問題は、スクリーンショットを正確に生成することですが、 btnTakePic をクリックすると、画像が古いものと重なってしまいます。古い画像のスクリーンショットをメモリから消去して、新しい画像に置き換えたいのですが、どうすればよいですか?それ ?

4

1 に答える 1