记录图片框区域[重复]

Posted

技术标签:

【中文标题】记录图片框区域[重复]【英文标题】:Record the picturebox area [duplicate] 【发布时间】:2017-06-06 09:17:59 【问题描述】:

我能够得到 picturebox1 的宽度和长度,但是我找不到正确的代码来获取 picturebox1 的 x 和 y 位置,我有已经尝试过以下代码;

job = new ScreenCaptureJob();
System.Drawing.Size area = SystemInformation.WorkingArea.Size;
Rectangle captureRect = new Rectangle(0, 0, pictureBox1.ClientSize.Width -(pictureBox1.ClientSize.Width % 4), pictureBox1.ClientSize.Height - (pictureBox1.ClientSize.Height % 4));

我使用 MEE 的 screencapturejob 来完成录制过程。

【问题讨论】:

我使用链接中的此代码,但有消息:名称 picturebox1 在当前上下文中不存在,您知道如何解决此问题吗? 我不知道你究竟是如何使用picturebox1 以及它是在哪里定义的,因为你没有向我们展示。但无论如何,这个错误是非常普遍的,归结为试图在不知道该变量/字段的范围内使用变量/字段 - ***.com/questions/18233630/…。 【参考方案1】:

使用类似的东西:

Point pt = pictureBox1.PointToScreen(new Point(0, 0));
Rectangle captureRect = new Rectangle(pt.X, pt.Y, pictureBox1.ClientSize.Width - (pictureBox1.ClientSize.Width % 4), pictureBox1.ClientSize.Height - (pictureBox1.ClientSize.Height % 4));

【讨论】:

我使用了该代码,但有消息:名称 picturebox1 在当前上下文中不存在,那我该怎么办? 此代码必须在包含 pictureBox1 的表单中执行。如果不是这种情况,那么您需要将对该 PictureBox 的引用从表单传递到您尝试访问它的任何位置。我们需要查看更多代码以更好地帮助您。 愚蠢的问题...您发布的原始代码是否产生了该错误?无论在哪里工作,新代码也应该工作。 嘿它解决了,我尝试重写代码.. 对不起,但我是这个 C# 编程的新手,我会努力变得更好

以上是关于记录图片框区域[重复]的主要内容,如果未能解决你的问题,请参考以下文章

鼠标单击图片框时图像的着色区域

图片框如何获取带数字的区域

快速框选图像的某一区域并进行缩放展示

opencv mser算法框出图片文字区域

PS处理图片选择区域调亮后,会在区域边(虚线框)的位置留下白色的边框。怎么处理掉?请各位大神帮忙。

基于区域的目标检测