winform窗体和控件自适应

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
namespace自己的命名空间
{
publicpartialclassfrmMain:Form
{
Autosizeautosize =newAutosize();
privatefloatX ;//宽í度è
privatefloatY;//高?度è
publicfrmMain()
{
InitializeComponent();
a = Convert.ToSingle(mytag[2]) * newx;
con.Left = (int)(a);
a = Convert.ToSingle(mytag[3]) * newy; con.Top = (int)(a);
Single currentSize = Convert.ToSingle(mytag[4]) * Math.Min(newx,
using System.Windows.Forms;
namespace 自己的命名空间
{
class Autosize
{
public void setTag(Control cons)
{
foreach (Control con in cons.Controls)
{
con.Tag = con.Width + ":" + con.Height + ":" + con.Left + ":" +
con.Top + ":" + con.Font.Size;
if (con.Controls.Count > 0) setTag(con);
}
}
string[] mytag;
public void setControls(float newx, float newy, Control cons)
{
foreach (Control con in cons.Controls)
{
if (con.Tag != null)
{
mytag = con.Tag.ToString().Split(new char[] { ':' });
float a = Convert.ToSingle(mytag[0]) * newx; con.Width = (int)a;
a = Convert.ToSingle(mytag[1]) * newy; con.Height = (int)(a);
有时winform窗体的大小会改变,此时窗体上的控件会很混乱,如何可以使控件自适应窗体呢?以
下就是方法:
1、首先在自己的命名空间里先建一个Autosize.cs类
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
{
floatnewx = (this.Width) / X;
floatnewy =this.Height / Y;
autosize.setControls(newx, newy,this);
}
}
}
usingSystem.Data;
usingSystem.Drawing;
usingSystem.Linq;
usingSystem.Text;
usingSystem.Windows.Forms;
usingSemi_auto_CLIA.ProQuery;
usingSemi_auto_CLIA.LabTest;
来自百度文库newy);
}
//con.Font = new Font
(con.Font.Name, currentSize, con.Font.Style, con.Font.Unit);
con.Font = new Font
(con.Font.Name, currentSize, con.Font.Style, con.Font.Unit);
X =this.Width;
Y =this.Height;
autosize.setTag(this);
//this.skinEngine1.SkinFile = "EmeraldColor1.ssk";
}
privatevoidfrmMain_SizeChanged(objectsender,EventArgse)
if (con.Controls.Count > 0)
{
setControls(newx, newy, con);
}
}
}
}
}
2、在别的窗体中调用此类中的方法可实现winform窗体自适应
例:usingSystem;
usingSystem.Collections.Generic;
usingSystem.ComponentModel;
相关文档
最新文档