加载中…
个人资料
小丸酱
小丸酱
  • 博客等级:
  • 博客积分:0
  • 博客访问:251,812
  • 关注人气:76
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
正文 字体大小:

[转载]浅谈 c#更改WinForm窗体控件字体大小

(2012-03-20 16:04:57)
标签:

转载

分类: Code

废话少说,直接上代码!

1、首先定义一个ClassSetControlFontSize类

  public class ClassSetControlFontSize
    {

        //记录窗体中所有控件信息以及控件对应字体大小信息
        public static ArrayList listInfor =new ArrayList();

        //记录控件字体大小缩变float
        public static float fAdd { get; set; }

        //循环listInfor控件信息,改变字体大小
        public static void SetControlFontStyle(float fSize)
            
            for (int nC = 0; nC < listInfor.Count; nC += 2)
            {
                Control control = listInfor[nC] as Control;
                float fFontS = float.Parse(listInfor[nC + 1].ToString());
                control.Font= new Font(control.Font.Name, fFontS +fSize);
                    
        }
    }

2、具体调用该类步骤:

   1)在窗体加载事件(FormLoad)中,添加代码

   private void Form_Load(object sender, EventArgs e)
        {
            ClassSetControlFontSize.listInfor.Clear();

            foreach (Control item in Controls)
            {
                ClassSetControlFontSize.listInfor.Add(item);
                ClassSetControlFontSize.listInfor.Add(item.Font.Size);
            }
        }

   2)点击按钮或者combobox选择事件填写代码

private void comboBox1_SelectedIndexChanged(object sender, EventArgs e)
        {

           //记录选择字体大小信息,针对子窗体依然可以遵循该字体大小
            ClassSetControlFontSize.fAdd = float.Parse(this.comboBox1.Text);

            //combBox1的项应为数字
            ClassSetControlFontSize.SetControlFontStyle(float.Parse(comboBox1.Text));         
        }

3、结束

有好的方案,请指教一二

0

  

新浪BLOG意见反馈留言板 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 产品答疑

新浪公司 版权所有