我如何插入一个框,我画出从笔到一个图片框图像

本文关键字:一个 图像 框图 何插入 插入 | 更新日期: 2023-09-27 18:15:46

我需要帮助插入一个我从图片框中抽出的框。
这是我编码出来的笔的代码,我不知道怎么放在图片框里。会有一个摄像头在图片框的背景上运行,我想让我的矩形在图片框里面。

private void button1_Click(object sender, EventArgs e)
{
    if (button1.Text == "Start")
    {
        Graphics myGraphics = base.CreateGraphics();
        myGraphics.Clear(Color.White);
        Pen myPen = new Pen(Color.DarkBlue);
        Rectangle rect = new Rectangle(480, 70, 120, 120);
        myGraphics.DrawRectangle(myPen, rect);
        stopWebcam = false;
        button1.Text = "Stop";
    }
    else
    {
        stopWebcam = true;
        button1.Text = "Start";
    }
}

我如何插入一个框,我画出从笔到一个图片框图像

winforms中的绘制主要是在OnPaint事件中完成的。你的ButtonClick事件处理程序应该只设置OnPaint的舞台,并可能激活它。例子:

public class MyForm : Form
    ...
    private Rectangle? _boxRectangle;   
    private void OnMyButtonClick(object sender, EventArgs e)
    {
        if (button1.Text == "Start")
        {
            _boxRectangle = new Rectangle(...);
            button1.Text = "Stop";
        }
        else
        {
            _boxRectangle = null;
            button1.Text = "Start";
        }
        Invalidate(); // repaint
    }
    protected override OnPaint(PaintEventArgs e)
    {
        if (_boxRectangle != null)
        {
            Graphics g = e.Graphics.
            Pen pen = new Pen(Color.DarkBlue);
            g.DrawRectangle(_boxRectangle);
        }
    }
}

你可能需要将网络摄像头图像绘制到位图缓冲区中,并将其用作图片框的图像。

下面是msdn页面,底部有示例:

http://msdn.microsoft.com/en-us/library/system.windows.forms.picturebox.aspx

这是我做这件事的方法。
public void GraphicsToPictureBox (ref PictureBox pb, Graphics graphics,
                              Int32 width, Int32 height) 
{
    Bitmap bitmap = new Bitmap(width,height,graphics);
    pb.Image = bitmap;
}