给你个简单的例子吧
private void sum()
{}private void sum(int a ,int b)
{}private void sum(string a ,string b,string c)
{}这就是重载 方法名相同都为sum 参数个数同 第一个没有参数 第二个两个参数 第三个三个参数
方法名相同参数个数不同看下面
private void sum(int a ,int b)
{}private void sum(string a ,string b)
{}
这就不是重载了`是错误 虽然它的参数类型不一样`但是参数个数是相同的 至于为什么 你再去看下定义就明白了
private void sum()
{}private void sum(int a ,int b)
{}private void sum(string a ,string b,string c)
{}这就是重载 方法名相同都为sum 参数个数同 第一个没有参数 第二个两个参数 第三个三个参数
方法名相同参数个数不同看下面
private void sum(int a ,int b)
{}private void sum(string a ,string b)
{}
这就不是重载了`是错误 虽然它的参数类型不一样`但是参数个数是相同的 至于为什么 你再去看下定义就明白了
public partial class NewForm : Form
{
double formoldwidth; //窗体原始宽度
double formoldheight; //窗体原始高度 protected override void OnLoad(EventArgs e)
{
base.OnResize(e);
double scalewh; //控件宽高比
formoldwidth = (double)this.Width;
formoldheight = (double)this.Height;
foreach (Control ctrl in this.Controls)
{
scalewh = (double)ctrl.Width / (double)ctrl.Height;
ctrl.Tag = ctrl.Left + " " + ctrl.Top + " " + ctrl.Width + " " + scalewh.ToString() + " "; //将控件的Left,Top,Width,宽高比放入控件的Tag内
}
} protected override void OnResize(EventArgs e)
{
base.OnResize(e);
double scalex; //水平伸缩比
double scaley; //垂直伸缩比
long i;
int temppos;
string temptag;
double[] pos = new double[4]; //pos数组保存当前控件的left,top,width,height scalex = (double)this.Width / formoldwidth;
scaley = (double)this.Height / formoldheight;
foreach (Control ctrl in this.Controls)
{
if (ctrl.Tag != null)
{
temptag = ctrl.Tag.ToString();
for (i = 0; i <= 3; i++)
{
temppos = temptag.IndexOf(" ");
if (temppos > 0)
{
pos[i] = Convert.ToDouble(temptag.Substring(0, temppos)); //从Tag中取出参数
temptag = temptag.Substring(temppos + 1);
}
else
pos[i] = 0;
}
ctrl.Left = (int)(pos[0] * scalex);
ctrl.Top = (int)(pos[1] * scaley);
ctrl.Width = (int)(pos[2] * scalex);
ctrl.Height = (int)((double)ctrl.Width / pos[3]); //高度由宽高比算出
}
}
}
}
希望有帮助
public partial class NewForm : Form
{
double formoldwidth; //窗体原始宽度
double formoldheight; //窗体原始高度 protected override void OnLoad(EventArgs e)
{
base.OnResize(e);
double scalewh; //控件宽高比
formoldwidth = (double)this.Width;
formoldheight = (double)this.Height;
foreach (Control ctrl in this.Controls)
{
scalewh = (double)ctrl.Width / (double)ctrl.Height;
ctrl.Tag = ctrl.Left + " " + ctrl.Top + " " + ctrl.Width + " " + scalewh.ToString() + " "; //将控件的Left,Top,Width,宽高比放入控件的Tag内
}
} protected override void OnResize(EventArgs e)
{
base.OnResize(e);
double scalex; //水平伸缩比
double scaley; //垂直伸缩比
long i;
int temppos;
string temptag;
double[] pos = new double[4]; //pos数组保存当前控件的left,top,width,height scalex = (double)this.Width / formoldwidth;
scaley = (double)this.Height / formoldheight;
foreach (Control ctrl in this.Controls)
{
if (ctrl.Tag != null)
{
temptag = ctrl.Tag.ToString();
for (i = 0; i <= 3; i++)
{
temppos = temptag.IndexOf(" ");
if (temppos > 0)
{
pos[i] = Convert.ToDouble(temptag.Substring(0, temppos)); //从Tag中取出参数
temptag = temptag.Substring(temppos + 1);
}
else
pos[i] = 0;
}
ctrl.Left = (int)(pos[0] * scalex);
ctrl.Top = (int)(pos[1] * scaley);
ctrl.Width = (int)(pos[2] * scalex);
ctrl.Height = (int)((double)ctrl.Width / pos[3]); //高度由宽高比算出
}
}
}
}
希望有帮助