要在C# WinForm中实现窗体的自适应电脑分辨率,可以按照以下步骤进行操作:

在窗体的属性中设置FormBorderStyle属性为Sizable,以允许用户调整窗体大小。 在窗体的Load事件中,添加以下代码来获取当前屏幕的分辨率: int screenWidth = Screen.PrimaryScreen.Bounds.Width;

int screenHeight = Screen.PrimaryScreen.Bounds.Height; 使用Screen类中的GetWorkingArea方法来获取除去任务栏的工作区域的分辨率,以便考虑到任务栏的影响: Rectangle workingArea = Screen.GetWorkingArea(this);

int workingWidth = workingArea.Width;

int workingHeight = workingArea.Height; 根据当前屏幕的分辨率调整窗体的大小和位置,可以在Form的Resize事件中添加以下代码: private void Form1_Resize(object sender, EventArgs e)

{

int formWidth = 800; // 设置窗体的初始宽度

int formHeight = 600; // 设置窗体的初始高度

// 计算窗体的缩放比例

float widthRatio = (float)workingWidth / formWidth;

float heightRatio = (float)workingHeight / formHeight;

float scale = Math.Min(widthRatio, heightRatio);

// 缩放窗体的控件

this.Scale(new SizeF(scale, scale));

// 调整窗体的位置

int x = (workingWidth - this.Width) / 2;

int y = (workingHeight - this.Height) / 2;

this.Location = new Point(x, y);

}

        这样,在调整窗体大小或更改分辨率时,窗体和窗体中的控件将会自动根据屏幕的分辨率进行适应调整。请注意适当调整上述示例代码中的初始窗体宽度和高度,并根据实际需求进行进一步修改。

精彩链接

评论可见,请评论后查看内容,谢谢!!!
 您阅读本篇文章共花了: