winform panel面板在窗体里居中
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了winform panel面板在窗体里居中相关的知识,希望对你有一定的参考价值。
RT,窗体默认为全屏,如何让panel面板居中显示
Panel panel1;吧下面定位放到初始化InitializeComponent();的后面
panel1.Location=new Point((this.Width-panel1.Width)/2,(this.height-panel1.Height)/2)
如果你窗体带边框的话 this.Width 和this.Height实际上是连边框一起算进去的 ,再减掉就绝对居中了
觉得麻烦可以定义一个最底层的Panel 其他控件都放这个panel里,
比如
Panel mpanel=new Panel();
mpanel.Dock = DockStyle.Fill;
this.Controls.Add(mpanel);
mpanel.Controls.Add(panel1);
panel1.Location=new Point((mpanel.Width-panel1.Width)/2,(mpanel.height-panel1.Height)/2);
这样就绝对居中了 参考技术A 定义一下Anchor,左右对齐一下。追问
居中不了啊,分辨率在其它机器上有可能不一样,要做到不管分辨率是什么都要居中
追答两种方案
后台代码计算尺寸
用WPF
后台代码怎么算?
追答this.Size就是窗体的尺寸,然后你根据想要的比例计算出panel的Left和Width即可。
本回答被提问者采纳winform 窗体加载的问题,C#里不同Panel中窗体的调用
有3个窗体form1在panel1中,form2在panel2中,form3 在panel3中 (在panel2右边),其中form1的按钮控制 form2和form3的加载 ,form2中的按钮控制form3的加载
panel1,panel2和panel3同属主窗体了,现在是panel2中的按钮如何控制panel3中窗体的变化了
panel1中加载form2 和form3的代码
form2 frmSchedule = new form2();
frmSchedule.MdiParent = this;
panel2.Controls.Clear();
panel2.Controls.Add(frmSchedule);
frmSchedule.Dock = DockStyle.Fill;
frmSchedule.Show();
现在是 panel2 不知道怎么加载 panel3中的窗体,怎么找到父级的 panel1,折腾了1晚上实在搞不定啊,望哪位能帮帮小弟啊
以上是关于winform panel面板在窗体里居中的主要内容,如果未能解决你的问题,请参考以下文章
winform 窗体加载的问题,C#里不同Panel中窗体的调用
winform中如何设置提示框在winform窗体中居中显示?