将图像显示在窗口窗体中
本文关键字:窗体 窗口 图像 显示 | 更新日期: 2023-09-27 18:34:11
我想向Windows表单显示图像,但是我已经这样做了,图像没有出来。
我哪里做错了?
这是代码:
private void Images(object sender, EventArgs e)
{
PictureBox pb1 = new PictureBox();
pb1.Image = Image.FromFile("../SamuderaJayaMotor.png");
pb1.Location = new Point(100, 100);
pb1.Size = new Size(500, 500);
this.Controls.Add(pb1);
}
这里有 (http://www.dotnetperls.com/picturebox) 有 3 种方法可以做到这一点:
- 就像你正在做的那样。
-
使用 PictureBox 的 ImageLocation 属性,如下所示:
private void Form1_Load(object sender, EventArgs e) { PictureBox pb1 = new PictureBox(); pb1.ImageLocation = "../SamuderaJayaMotor.png"; pb1.SizeMode = PictureBoxSizeMode.AutoSize; }
-
使用来自网络的图像,例如:
private void Form1_Load(object sender, EventArgs e) { PictureBox pb1 = new PictureBox(); pb1.ImageLocation = "http://www.dotnetperls.com/favicon.ico"; pb1.SizeMode = PictureBoxSizeMode.AutoSize; }
并且,请确保"../SamuderaJayaMotor.png"是您正在使用的图像的正确路径。
这可能有很多原因。我很快想到了一些:
- 您是否在
InitializeComponent()
之后调用此例程? - 您使用的路径语法是否正确?如果您在调试器中尝试它是否有效?尝试使用反斜杠 ('') 而不是斜杠 (/),看看。
- 这可能是由于窗体中其他一些代码的副作用造成的。尝试在空白窗体中使用相同的代码(仅使用构造函数和此函数)并进行检查。
当我将其放入 Load 事件中时,我在 Windows 窗体中显示图像,如下所示:
private void Form1_Load( object sender , EventArgs e )
{
pictureBox1.ImageLocation = "./image.png"; //path to image
pictureBox1.SizeMode = PictureBoxSizeMode.AutoSize;
}
private void Form1_Load(object sender, EventArgs e)
{
PictureBox pb = new PictureBox();
pb.Location = new Point(0, 0);
pb.Size = new Size(150, 150);
pb.Image = Image.FromFile("E:''Wallpaper (204).jpg");
pb.Visible = true;
this.Controls.Add(pb);
}