C# 如何设置图像索引和填充图像
我在图片编辑中得到了6幅这样的图片 但是当我禁用第二个和第四个图像的可见性时,它变为空或空白。 我想要的是另一个图像填充空白或像这样的图像(不只是第二个和第四个,只要我想,可见性为false): 我使用的代码是:C# 如何设置图像索引和填充图像,c#,image,winforms,C#,Image,Winforms,我在图片编辑中得到了6幅这样的图片 但是当我禁用第二个和第四个图像的可见性时,它变为空或空白。 我想要的是另一个图像填充空白或像这样的图像(不只是第二个和第四个,只要我想,可见性为false): 我使用的代码是: Bitmap gambr1 = new Bitmap(Properties.Resources.Add_f, 32, 32); Bitmap gambr2 = new Bitmap(Properties.Resources.Edit_f, 32, 32);
Bitmap gambr1 = new Bitmap(Properties.Resources.Add_f, 32, 32);
Bitmap gambr2 = new Bitmap(Properties.Resources.Edit_f, 32, 32);
Bitmap gambr3 = new Bitmap(Properties.Resources.Delete_f, 32, 32);
Bitmap gambr4 = new Bitmap(Properties.Resources.print, 32, 32);
Bitmap gambr5 = new Bitmap(Properties.Resources.sheet,32,32);
Bitmap gambr6 = new Bitmap(Properties.Resources.close, 32, 32);
private void dev12_Load(object sender, EventArgs e)
{
pictureEdit1.Image = gambr1;
pictureEdit2.Image = gambr2;
pictureEdit3.Image = gambr3;
pictureEdit4.Image = gambr4;
pictureEdit5.Image = gambr5;
pictureEdit6.Image = gambr6;
if ( pictureEdit2.Visible == false)
{
pictureEdit2.Visible = false;
}
if ( pictureEdit4.Visible == false)
{
pictureEdit4.Visible = false;
}
}
每个位置的
Point a1 = new Point(162,10);
Point b1 = new Point(233,10);
Point c1 = new Point(304,10);
Point d1 = new Point(376,10);
Point e1 = new Point(447,10);
Point f1 = new Point(518,10);`
你可以用一个。这样,当控件不可见时,其他控件将移动并填充空间:
- 设置
的FlowLayoutPanel
,以指定容器和内容物之间的距离Padding
- 设置控件的
,以指定Margin
中控件之间的距离FlowLayoutPanel
PictureBox
控件的Padding
设置为5,将所有PictureBox
控件的边距设置为5,然后单击将控件的Visible
设置为false
。您可以看到,一旦我使控件不可见,布局就会更改:
另一个选项是,您可以在面板中将所有图片框停靠到左侧。通过这种方式,当您使其中一个不可见时,其他图像将填充左侧的空间。您可以使用FlowLayuotPanel。@shad0wk是的,如果我隐藏我想要的图像很容易。但是如果有多个,它会得到这么多的if(条件),作为另一个选项,您可以在面板中将所有图片框停靠到左侧。这样,当你让其中一个隐形时,其他人也会占据左边的空间。谢谢你的建议。我会努力学习的。该图片是使用panelcontrol1停靠在表单底部的?我应该切换它还是直接使用它?虽然首选FlowLayoutPanel
,但您也可以PictureBox
控件的属性停靠在面板的左侧
@RezaAghaei,问题是图片框位于PanelControld的中心,如果我使用的是dock left,那么我就没有必要对此提出疑问-没有冒犯当我说PictureBox
时,我指的是显示图标的控件。因此,如果它是一个用户控件,它是使用一个面板创建的,面板中有一个picturebox,请将我所说的应用到该控件上。糟糕的是,我认为它仍然在使用我的panelcontrol1。我的panelcontrol停靠在底部窗体上,而我的picturebox
仍然没有停靠。我首先了解了flowlayoutpanel,谢谢你的码头建议