C# 如何创建已单击控件的列表?
我一直试图制作一个包含3个picturebox控件(picturebox1、2和3)的列表,但未成功;列表需要有第二个参数true或false。如果单击一个picturebox,则bool为True,其他为False。该列表应类似于以下内容:C# 如何创建已单击控件的列表?,c#,winforms,C#,Winforms,我一直试图制作一个包含3个picturebox控件(picturebox1、2和3)的列表,但未成功;列表需要有第二个参数true或false。如果单击一个picturebox,则bool为True,其他为False。该列表应类似于以下内容: pictureBox2, true pictureBox1, false pictureBox3, false 现在,当我按下按钮时,我希望单击的pictureBox位于列表的底部。 我一直在尝试编写代码,这样只有错误的图片框才会被吸引到面板上。这意
pictureBox2, true
pictureBox1, false
pictureBox3, false
现在,当我按下按钮时,我希望单击的pictureBox位于列表的底部。
我一直在尝试编写代码,这样只有错误的图片框才会被吸引到面板上。这意味着“pictureBox1首先被绘制,然后是pictureBox3
e.Graphics.DrawImage(< pictureBox >!true, new Rectangle(< pictureBox >!true.Location, < pictureBox >!true.Size));
e.Graphics.DrawImage(!true,新矩形(!true.Location,!true.Size));
我一点也不知道该怎么写这个列表或画法。非常感谢您的帮助。您的绘画方法应该是这样的:
int Y = 0;
foreach(PictureBox pb in MyList)
{
if(!pb.Visible)
{
e.Graphics.DrawImage(pb.BackgroundImage, new Point(0,Y));
Y += pb.Height;
}
}
我对那个密码非常好奇<代码>!true-这不是更好地表示为
false
<代码>!是的。大小-这到底是什么?老兄,我不知道这张“列表”是按代码还是你想画这些图像。。。你能解释清楚一点吗?到目前为止,你做了什么?是的,这只是一个假设的例子,大卫。这没有道理。实际的编码方式是我所困惑的。安德烈,我想画出控件的背景图像,这些图像是假的。该列表用于安排向配电盘抽签的顺序。我希望我向betterAlex解释过,当图片框不可见时,我需要在面板上绘制图片框。这个方法可以工作,但我不能在我的应用程序中使用它。我需要一份名单是的,亚历克斯。当我单击一个pictureBox时,其他pictureBox将变为不可见并被绘制到面板上。但它们只会以一种方式绘制。如果(pictureBox1.Visible=false){e.Graphics.DrawImage(pictureBox1.BackgroundImage,新矩形(pictureBox1.Location,pictureBox1.Size));}则如果pictureBox2不可见,则绘制它。看,它是从第一个到最后一个被画出来的,但是如果我改变了画的顺序,那么画的顺序就不会改变。我希望上面的评论不会像听起来那么混乱lol@kev你需要做自己的布局,而不是使用PB的位置。我更改了代码,按照图像在MyList中的显示顺序绘制图像,从Y=0开始,向下移动到PB的高度。谢谢。我知道我之前一定很困惑。列表代码应该是这样的吗?:list MyList=new list();MyList.Add(pictureBox1);MyList.Add(pictureBox2);MyList.Add(pictureBox3);