将图像显示在窗口窗体中

本文关键字:窗体 窗口 图像 显示 | 更新日期: 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"是您正在使用的图像的正确路径。

这可能有很多原因。我很快想到了一些:

  1. 您是否在InitializeComponent()之后调用此例程?
  2. 您使用的路径语法是否正确?如果您在调试器中尝试它是否有效?尝试使用反斜杠 ('') 而不是斜杠 (/),看看。
  3. 这可能是由于窗体中其他一些代码的副作用造成的。尝试在空白窗体中使用相同的代码(仅使用构造函数和此函数)并进行检查。

当我将其放入 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);
    }