C#动态添加控件的位置
使用代码动态地在窗体中添加控件,如picturebox,默认初始位置在窗体的左上角,如何使我每次添加的picturebox控件不互相位置重复,且不会相互遮挡。保持互相间的一段距离,因为相互之间要用线连接,如果错位或者遮挡的话线就没办法体现出来,最好是相互间保持一段距离
------解决方案--------------------记录上一个的位置,然后再次基础上增加偏移
------解决方案--------------------定义两个变量x、y,记载有几个图片控件已经显示了,
再加上每个图片控件的间距就是下一个图片控件的Location坐标了。
------解决方案--------------------把控件添加到flowLayoutPanel就不用担心控件重合了
------解决方案-------------------- int CtrlXMargin = 5;
int CtrlYMargin = 5;
int CtrlHeight = 24;
//
CheckBox ckBox = new CheckBox();
ckBox.Text = "123";
ckBox.Name ="123";
ckBox.Location = new Point(CtrlXMargin, CtrlYMargin + yIndex * CtrlHeight);
ckBox.Size = new Size(CtrlDefaultWidth, CtrlHeight);
pnl.Controls.Add(ckBox);
Label lbl = new Label();
lbl.Location = new Point(ckBox.Right + CtrlXspace, CtrlYMargin + yIndex * CtrlHeight);
lbl.Size = new Size(17, 17);
lbl.Name = "456";
lbl.Text = "含";
lbl.BackColor = Color.Coral;
lbl.TextAlign = ContentAlignment.MiddleCenter;