【问题标题】:VB.NET: Clearing a pictureboxVB.NET:清除图片框
【发布时间】:2012-10-11 23:23:28
【问题描述】:

到目前为止,我所看到的清​​除图片框的代码都没有达到我所需要的。 我想清除一个图片框,以便在“空白”背景上绘制新的东西。

这是我的代码:

    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click

    PictureBoxClear(Me.PictureBox1)

    m_i = m_i + 1
    Dim nPT As New Point(0, 0)
    Me.ImageList1.Draw(Me.PictureBox1.CreateGraphics, nPT, m_i)

End Sub
Public Sub PictureBoxClear(ByRef pb As PictureBox)

    pb.Image = Nothing

End Sub

 .Image = Nothing

似乎完全删除了图像,以便之后我无法真正在其上绘制一些东西。 我只是想清除我的图片框,以便它可以再次获得一些绘图。

谢谢!

【问题讨论】:

  • “空白”是指透明吗?
  • PictureBox 不是用来绘制的。您应该在图像上绘图,然后在 Paint 事件中更新 PictureBox。看到这个:bobpowell.net/picturebox.htm

标签: vb.net picturebox


【解决方案1】:

您可以尝试用全新的图片替换它:

pb.Image =  New Bitmap(pb.ClientSize.Width, pb.ClientSize.Height)

【讨论】:

  • 不幸的是,这对我不起作用。之后当我在上面画一些东西时,图片框保持空白。
  • 你是否持有对 pb.Image 旧值的引用?
  • 不,这是我使用的所有代码: Public Class Form1 Private m_i As Integer Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click PictureBoxClear (Me.PictureBox1) m_i = m_i + 1 Dim nPT As New Point(0, 0) Me.ImageList1.Draw(Me.PictureBox1.CreateGraphics, nPT, m_i) End Sub Public Sub PictureBoxClear(ByRef pb As PictureBox) End Sub End类
猜你喜欢
  • 2012-03-16
  • 1970-01-01
  • 1970-01-01
  • 2012-11-21
  • 2014-06-27
  • 2013-07-14
  • 2013-05-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多