【问题标题】:PictureBox and Paint EventPictureBox 和 Paint 事件
【发布时间】:2015-04-22 14:50:35
【问题描述】:

我有一个图片框,比如说“PB”。我在

中捕捉到了PB的绘画事件
private void PB_Paint(object sender, PaintEventArgs e)

在 PB_Paint 中,我绘制了一些形状。

我想控制谁调用这个方法。 例如,当窗体被调整大小或其他事情时,他们调用 PB.Invalidate() 调用 PB_Paint。 为什么我要控制谁调用这个方法?因为,我希望仅在需要时调用 PB_Paint。

我想在 PB_Paint 内部和绘制过程之前控制谁调用 PB_Paint,然后进行 Switch...但是“发送者”始终是 PB,PaintEventArgs 没有提供任何信息来知道谁是调用者。

你有什么想法吗?

【问题讨论】:

  • 不是很清楚,但是尝试在位图上进行绘画,然后使用 PictureBox 显示该位图。
  • 每当您对控制您在 Paint 事件中绘制的数据进行更改时调用 Invalidate。也许在 MouseMove 事件中,当您收集到一个新坐标时。系统有时需要调用它。为什么要停止必要的更新?结果会显示错误!

标签: c# winforms events picturebox


【解决方案1】:

在 PB_Paint 开头添加标志(例如f_paint_enabled)并启用/禁用它以控制任务。

【讨论】:

  • 是的,我认为这是我能做的最好的事情。
猜你喜欢
  • 2016-12-12
  • 2015-04-23
  • 2021-12-03
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多