您需要决定要做什么:
- 画 入图像 或
- 借鉴 控制 ?
您的代码混合了两者,这就是为什么它不起作用的原因。
下面是如何画 上 了
Control:
private void pictureBox1_Paint(object sender, PaintEventArgs e){ e.Graphics.DrawEllipse(Pens.Red, new Rectangle(3, 4, 44, 44)); ..}
下面是如何绘制 成 的
Image的
PictureBox::
void drawIntoImage(){ using (Graphics G = Graphics.FromImage(pictureBox1.Image)) { G.DrawEllipse(Pens.Orange, new Rectangle(13, 14, 44, 44)); .. } // when done with all drawing you can enforce the display update by calling: pictureBox1.Refresh();}
两种绘制方式都是持久的。后者更改为图像的像素,前者则不更改。
因此,如果将像素绘制到图像中,并且进行缩放,拉伸或移动图像,则像素将随之变化。绘制到PictureBox控件顶部的像素将无法做到这一点!
当然,对于这两种绘制方式,您都可以更改所有常用的零件,例如绘图命令,也可以
FillEllipse在
DrawEllipse,
Pens和之前添加一个,以及
Brushes其画笔类型和
Colors尺寸。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)