0

我有两个关于多边形的问题。

  1. 我将多边形绘制到图片框。图片框有滑动条。如果我使用滑动条向上或向下移动,则会删除当前不可见的多边形。我使用 C# 才 2 个月,所以我还是新手。如何解决这个问题?

  2. 可以单击多边形并用鼠标移动它们或更改它们的大小吗?

此致

for (int i = 0; i < final_rng.Count; i++) 
{
    listPoint.Clear(); 
    for (int j = 0; j < final_rng[i].body.Count; j++)
    { 
       listPoint.Add(new Point(final_rng[i].body[j].X, final_rng[i].body[j].Y)); 
     }
//for (int j = 0; j < final_rng[i].body.Count; j++)
    grafika.FillPolygon(Brushes.Turquoise, listPoint.ToArray()); }
//for (int i = 0; i < final_rng.Count; i++)
4

1 回答 1

0

如果您直接在 上PictureBox绘制,则在重新绘制控件时(例如,当您调整窗口大小时),绘制的多边形将丢失。更好的方法是在 a 上绘制Bitmap并添加,然后将其显示在PictureBox. 一个例子:

// A new bitmap with the same size as the PictureBox
var bitmap = new Bitmap(pictureBox1.Width, pictureBox1.Height);

//Get the graphics objectm which we can use to draw
var graphics = Graphics.FromImage(bitmap);

//Draw stuff
graphics.FillRectangle(Brushes.Red, new Rectangle(0, 0, 500, 500));

//Show the bitmap with graphics image in the PictureBox
pictureBox1.Image = bitmap;
于 2013-07-10T08:50:29.107 回答