• 大小: 0.06M
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2024-06-18
  • 语言: C#
  • 标签: 自适应  窗体  C#  

资源简介

C#窗体自适应

资源截图

代码片段和文件信息

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Drawing;

namespace ControlsAutoSize
{
    class ControlChange
    {
        #region 控件大小随窗体大小等比例缩放
        public float x;//定义当前窗体的宽度
        public float y;//定义当前窗体的高度
        /// 
        /// 遍历窗体控件,使之自适应
        /// 

        /// 
        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);
                }
            }
        }
        /// 
        /// 重置窗体控件,使之自适应
        /// 

        /// 
        /// 
        /// 
        public void setControls(float newx float newy Control cons)
        {
            //遍历窗体中的控件,重新设置控件的值
            foreach (Control con in cons.Controls)
            {
                //获取控件的Tag属性值,并分割后存储字符串数组
                if (con.Tag != null)
                {
                    string[] mytag = con.Tag.ToString().Split(new char[] { ‘;‘ });
                    //根据窗体缩放的比例确定控件的值
                    con.Width = Convert.ToInt32(System.Convert.ToSingle(mytag[0]) * newx);//宽度
                    con.Height = Convert.ToInt32(System.Convert.ToSingle(mytag[1]) * newy);//高度
                    con.Left = Convert.ToInt32(System.Convert.ToSingle(mytag[2]) * newx);//左边距
                    con.Top = Convert.ToInt32(System.Convert.ToSingle(mytag[3]) * newy);//顶边距
                    Single currentSize = System.Convert.ToSingle(mytag[4]) * newy;//字体大小
                    con.Font = new Font(con.Font.Name currentSize con.Font.style con.Font.Unit);
                    if (con.Controls.Count > 0)
                    {
                        setControls(newx newy con);
                    }
                }
            }
        }

        /// 
        /// 控件在父控件中居中
        /// 

        /// 要设置的控件
        /// 左右居中
        /// 上下居中
        /// 
        public  bool CenterCtr(Control ctr bool isLR bool isUD)
        {
            Control pCtr = ctr.Parent;
            int x = isLR ? ((pCtr.Width - ctr.Width) / 2) : ctr.Location.X;
            int y = isUD ? ((pCtr.Height - ctr.Height) / 2) : ctr.Location.Y;
            ctr.Location = new System.Drawing.Point(x y);
            return true;
        }

        #endregion

    }
}

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

    ..A..H.     13824  2022-08-03 14:23  ControlsAutoSize\.vs\ControlsAutoSize\v14\.suo

    ..A..H.     39424  2022-08-11 09:41  ControlsAutoSize\.vs\ControlsAutoSize\v16\.suo

     文件        187  2022-08-03 14:23  ControlsAutoSize\ControlsAutoSize\App.config

     文件      11264  2022-08-03 14:42  ControlsAutoSize\ControlsAutoSize\bin\Debug\ControlsAutoSize.exe

     文件        187  2022-08-03 14:23  ControlsAutoSize\ControlsAutoSize\bin\Debug\ControlsAutoSize.exe.config

     文件      24064  2022-08-03 14:42  ControlsAutoSize\ControlsAutoSize\bin\Debug\ControlsAutoSize.pdb

     文件      22696  2022-08-03 14:42  ControlsAutoSize\ControlsAutoSize\bin\Debug\ControlsAutoSize.vshost.exe

     文件        187  2022-08-03 14:23  ControlsAutoSize\ControlsAutoSize\bin\Debug\ControlsAutoSize.vshost.exe.config

     文件        490  2013-06-18 20:28  ControlsAutoSize\ControlsAutoSize\bin\Debug\ControlsAutoSize.vshost.exe.manifest

     文件       3973  2022-08-03 14:32  ControlsAutoSize\ControlsAutoSize\ControlsAutoSize.csproj

     文件        228  2022-08-03 14:32  ControlsAutoSize\ControlsAutoSize\ControlsAutoSize.csproj.user

     文件       3110  2022-08-11 08:45  ControlsAutoSize\ControlsAutoSize\ControlsChange.cs

     文件       1118  2022-08-11 09:41  ControlsAutoSize\ControlsAutoSize\Form1.cs

     文件       5917  2022-08-03 14:34  ControlsAutoSize\ControlsAutoSize\Form1.Designer.cs

     文件       5817  2022-08-03 14:34  ControlsAutoSize\ControlsAutoSize\Form1.resx

     文件        210  2022-08-11 08:05  ControlsAutoSize\ControlsAutoSize\obj\Debug\.NETframeworkVersion=v4.6.AssemblyAttributes.cs

     文件       5927  2022-08-11 08:05  ControlsAutoSize\ControlsAutoSize\obj\Debug\ControlsAutoSize.csproj.AssemblyReference.cache

     文件       1284  2022-08-03 14:42  ControlsAutoSize\ControlsAutoSize\obj\Debug\ControlsAutoSize.csproj.FileListAbsolute.txt

     文件        976  2022-08-03 14:34  ControlsAutoSize\ControlsAutoSize\obj\Debug\ControlsAutoSize.csproj.GenerateResource.Cache

     文件       2360  2022-08-03 14:24  ControlsAutoSize\ControlsAutoSize\obj\Debug\ControlsAutoSize.csprojResolveAssemblyReference.cache

     文件      11264  2022-08-03 14:42  ControlsAutoSize\ControlsAutoSize\obj\Debug\ControlsAutoSize.exe

     文件        180  2022-08-03 14:34  ControlsAutoSize\ControlsAutoSize\obj\Debug\ControlsAutoSize.Form1.resources

     文件      24064  2022-08-03 14:42  ControlsAutoSize\ControlsAutoSize\obj\Debug\ControlsAutoSize.pdb

     文件        180  2022-08-03 14:32  ControlsAutoSize\ControlsAutoSize\obj\Debug\ControlsAutoSize.Properties.Resources.resources

     文件        793  2022-08-11 08:11  ControlsAutoSize\ControlsAutoSize\obj\Debug\DesignTimeResolveAssemblyReferences.cache

     文件       7231  2022-08-11 08:05  ControlsAutoSize\ControlsAutoSize\obj\Debug\DesignTimeResolveAssemblyReferencesInput.cache

     文件          0  2022-08-03 14:23  ControlsAutoSize\ControlsAutoSize\obj\Debug\TemporaryGeneratedFile_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs

     文件          0  2022-08-03 14:23  ControlsAutoSize\ControlsAutoSize\obj\Debug\TemporaryGeneratedFile_5937a670-0e60-4077-877b-f7221da3dda1.cs

     文件          0  2022-08-03 14:23  ControlsAutoSize\ControlsAutoSize\obj\Debug\TemporaryGeneratedFile_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs

     文件        528  2022-08-03 14:23  ControlsAutoSize\ControlsAutoSize\Program.cs

............此处省略21个文件信息

评论

共有 条评论