更改 PictureBox 控件的显示顺序 [重复]
Posted
技术标签:
【中文标题】更改 PictureBox 控件的显示顺序 [重复]【英文标题】:Change display order of PictureBox controls [duplicate] 【发布时间】:2015-02-22 10:47:51 【问题描述】:我目前是一名学生,我对 C# 还很陌生,我目前正在做一个学校项目来创建一个游戏,但我面临一个 PictureBox
堆叠问题。我首先初始化的PictureBox
在前面,其他我初始化的PictureBox
在后面,看起来是这样的,
无论如何我可以把照片拿出来吗?这就是我的代码的样子。
handCardString = new List<string>();
handCardString = h.displayHand();
handCards = new PictureBox[99];
int q = 0;
int loca1 = 439;
foreach (string s in handCardString)
handCards[q] = new PictureBox();
String r = String.Format("c:/Users/youhj/Desktop/CA1/Cards/0.jpg",s);
Image ph = Image.FromFile(@r);
handCards[q].Image = ph;
pCardPhoto.Add(handCards[q]);
pCardPhoto[q].Location = new System.Drawing.Point(loca1, 383);
pCardPhoto[q].Size = new System.Drawing.Size(100, 126);
pCardPhoto[q].SizeMode = PictureBoxSizeMode.StretchImage;
pCardPhoto[q].BorderStyle = BorderStyle.None;
this.Controls.Add(pCardPhoto[q]);
loca1 += 20;
q++;
【问题讨论】:
@musefan 好的,对不起,我下次会小心的。谢谢你们! 【参考方案1】:WinForms 控件通常不堆叠,并且不真正支持透明度。如果您希望自定义图像渲染以支持此用途,请使用您自己的 OnPaint
例程编写自定义 Control
。
另一种选择是使用在这方面更灵活的 WPF,尽管它具有不同的编程模型和更陡峭的学习曲线。
【讨论】:
以上是关于更改 PictureBox 控件的显示顺序 [重复]的主要内容,如果未能解决你的问题,请参考以下文章
C# winform picturebox控件显示图片问题 怎么使picturebox在登录学号10001时显示本地文件夹里10001.jpg
Winform panel的底层为pictureBox然后显示pb为背景