gpt4 book ai didi

winforms - 更改应用程序中所有控件的字体大小(win 窗体)

转载 作者:行者123 更新时间:2023-12-05 01:44:34 26 4
gpt4 key购买 nike

我有一个应用程序需要适应一系列不同的屏幕尺寸(分辨率)。其中大部分是我使用表格布局面板完成的。

但是一些控件(主要是按钮和标签)的字体太大,文本不适合控件。到目前为止,我已经设法通过使用更改了一些控件的字体

            if (Screen.PrimaryScreen.Bounds.Width < 1440)
{
button_5.Font = new Font("Impact", button_5.Font.Size - 4);
}

但是要为应用程序中的每个控件添加太多文本。

有没有办法一次更改应用程序上所有控件的字体?或者至少是表单上的所有控件?

最佳答案

一个简单的递归函数将遍历表单中的所有控件并更改字体大小。你需要在你的控件上测试它并查看效果,因为在这段代码中没有异常处理

public void SetAllControlsFont(ControlCollection ctrls)
{
foreach(Control ctrl in ctrls)
{
if(ctrl.Controls != null)
SetAllControlsFont(ctrl.Controls);

ctrl.Font = new Font("Impact", ctrl.Font.Size - 4);

}
}

您可以通过传递初始表单的控件集合从顶层表单调用它

SetAllControlsFont(this.Controls);

关于winforms - 更改应用程序中所有控件的字体大小(win 窗体),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45426291/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com