C#,点击按钮点击,而不是

时间:2018-03-30 15:01:26

标签: c#

我很擅长使用C#。我开始在星期一说实话,在此之前只有基本的MATLAB经验水平,所以我仍然是某种新的擦洗。根据我的谷歌搜索技巧,我已经问过我会问的问题,但我还没有找到一个有效的解决方案。

我目前正在编写一个程序,用于从Vimba相机获取图像,以及随后的图像处理,该程序包含一个UI,因此form1。在此表单上,有pictureBoxLiveCamera显示来自摄像机的实时录制。

我想做的是:

  • pictureBoxLiveCamera顶部绘制两个矩形,表示图像的特定区域(这类似于一个魅力)
  • 启动程序时没有绘制这两个矩形,但是当我点击特定的drawRectanglesButton时(此处我有问题)
  • 如果绘制了矩形,则使用相同的按钮隐藏矩形,然后如果它们被隐藏则绘制它们(我不会那样)

我已经探索了很多类似的线程,this one特别影响了我编写代码的方式,尽管它还没有按预期工作。

以下是我的代码的相关内容:

  • 表单加载:

        // Form loading
    private void Form1_Load(object sender, EventArgs e)
    {
        pictureBoxLiveCamera.Paint += pictureBoxLiveCamera_Paint;
    ... //Vimba API startup and so on
    }
    
  • 按钮代码:

        private void drawRectanglesButton_Click(object sender, EventArgs e)
    {
        this.Invalidate(); // force Redraw the form
    }
    
  • 矩形绘制代码:

        public void pictureBoxLiveCamera_Paint(object sender, PaintEventArgs e)
    {
        Rectangle ee = new Rectangle(-5, 120, 790, 100);
        using (Pen pen = new Pen(Color.Red, 2))
        {
            e.Graphics.DrawRectangle(pen, ee);
        }
        Rectangle eee = new Rectangle(-5, 364, 790, 100);
        using (Pen pen = new Pen(Color.Red, 2))
        {
            e.Graphics.DrawRectangle(pen, eee);
        }
    }
    

我的问题如下:实际上,当我启动程序时,矩形已经被绘制,因此按钮什么都不做。

我很确定大多数人都会明白这个错误,但这一直让我疯狂。

非常感谢!

了Trion

0 个答案:

没有答案