0

要查看问题,请按照以下步骤操作(我使用 C# 进行编码):

  1. 在名为 picturebox1 的窗体上放置一个图片框
  2. 将其调整为小矩形(比如 75,75)
  3. 将图片添加到大于该矩形(例如 500,500)的资源(例如图片)

现在我们准备好了:D

我知道有两种方法可以在运行时将这张图片显示在图片框中,同时显示整个图片,而不仅仅是它的一部分:

  1. 添加 Imagelist 和设置大小(这一点都不好)
  2. 像这样写那个图片框的onPaint:

e.Graphics.DrawImage(Properties.Resources.pic, new Rectangle(0,0,75,75));

假设我要填充picturebox1 的Image 属性,现在我必须写这样的东西:

pictureBox1.Image = (Image)Properties.Resources.ResourceManager.GetObject("pic1");

它不会调整检索到的图像的大小。我想知道是否有解决此问题的好方法(轻松调整大小和分配)?顺便说一句,我不想​​用这些来调整图片的大小

  1. 使用 C# 编辑图像
  2. 在保持纵横比的同时进行图像编辑

现在第二个问题:

我知道资源是在我的示例中静态添加的,但是有没有办法以编程方式获取资源的名称,而不是将其硬编码为字符串并将其传递给“GetObject()”方法?

4

1 回答 1

1

默认情况下,PictureBox 不会调整图像大小以适应其显示区域。试试这个:

pictureBox1.SizeMode = PictureBoxSizeMode.StretchImage
于 2011-03-01T09:35:39.760 回答