資源簡(jiǎn)介
C#窗體自適應(yīng)
代碼片段和文件信息
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;//定義當(dāng)前窗體的寬度
????????public?float?y;//定義當(dāng)前窗體的高度
????????///?
????????///?遍歷窗體控件,使之自適應(yīng)
????????///?
????????///?
????????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);
????????????????}
????????????}
????????}
????????///?
????????///?重置窗體控件,使之自適應(yīng)
????????///?
????????///?
????????///?
????????///?
????????public?void?setControls(float?newx?float?newy?Control?cons)
????????{
????????????//遍歷窗體中的控件,重新設(shè)置控件的值
????????????foreach?(Control?con?in?cons.Controls)
????????????{
????????????????//獲取控件的Tag屬性值,并分割后存儲(chǔ)字符串?dāng)?shù)組
????????????????if?(con.Tag?!=?null)
????????????????{
????????????????????string[]?mytag?=?con.Tag.ToString().Split(new?char[]?{?‘;‘?});
????????????????????//根據(jù)窗體縮放的比例確定控件的值
????????????????????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);
????????????????????}
????????????????}
????????????}
????????}
????????///?
????????///?控件在父控件中居中
????????///?
????????///?要設(shè)置的控件
????????///?左右居中
????????///?上下居中
????????///?
????????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
????}
}
?屬性????????????大小?????日期????時(shí)間???名稱(chēng)
-----------?---------??----------?-----??----
????..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\.NETfr
?????文件???????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個(gè)文件信息
評(píng)論
共有 條評(píng)論