c# 设置窗体的大小(转载)
1.限制窗体的大小
(1)Width属性:用于获取和设置窗体的宽度
(2)Height属性:用于获取和设置窗体的高度
(3)FormBorderStyle属性:用于获取和设置窗体的边框样式
None:无边框
FixedSingle:固定的单行边框
Fixed3D:固定的三维边框
FixedDialog:固定的对话框样式的粗边框
Sizable:可调整大小的边框
FixedToolWindow:不可调整大小的工具窗口边框,工具窗口不会显示在任务栏中,也不会显示在当用户按Alt+Tab键时出现的窗口中。
SizableToolWindow:可调整大小的工具窗口边框,工具窗口不会显示在任务栏中,也不会显示在当用户按Alt+Tab键时出现的窗口中。
private void Form1_Load(object sender, EventArgs e)
{
this.Width = 300;
this.Height = 150;
this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedDialog;
}
2.根据桌面大小调整窗体大小
要想根据桌面大小调整窗体的大小,重点在于获取桌面的大小。
Screen类表示单个系统上的一个或多个显示设备,其PrimaryScreen属性用来获取主显示,该属性返回一个Screen对象,而调用Screen对象的WorkingArea属性可以获取显示器的工作区(Rectangle)。
/// <summary>
/// 获取桌面大小
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void button1_Click(object sender, EventArgs e)
{
int DeskWidth = Screen.PrimaryScreen.WorkingArea.Width;
int DeskHeight = Screen.PrimaryScreen.WorkingArea.Height;
txtDeskWidth.Text = DeskWidth.ToString();
txtDeskHeight.Text = DeskHeight.ToString();
}
/// <summary>
/// 计算窗体大小
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void button2_Click(object sender, EventArgs e)
{
double bfb = double.Parse(textBox1.Text.Trim())/100;
int DeskWidth = int.Parse(txtDeskWidth.Text.Trim());
int DeskHeight = int.Parse(txtDeskHeight.Text.Trim());
int FormWidth = Convert.ToInt32(Math.Floor(DeskWidth*bfb));
int FormHeight = Convert.ToInt32(Math.Floor(DeskHeight * bfb));
txtFormWidth.Text = FormWidth.ToString();
txtFormHeight.Text = FormHeight.ToString();
}
/// <summary>
/// 设置窗体大小
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void button3_Click(object sender, EventArgs e)
{
this.Width = int.Parse(txtFormWidth.Text.Trim());
this.Height = int.Parse(txtFormHeight.Text.Trim());
}
2)WindowState属性
该属性用于获取或设置窗体的窗口状态
- Maximized:最大化的窗口
- Minimized:最小化的窗口
- NORmal;默认大小的窗口
禁止改变窗体的大小
private void button4_Click(object sender, EventArgs e)
{
this.MaximizeBox = false; //禁用"最大化"按钮
this.FormBorderStyle = FormBorderStyle.FixedDialog; //设置窗体边框样式为对话框样式
}
————————————————
版权声明:本文为CSDN博主「哈哈哈哈_哈哈哈哈哈哈」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/qq_29176825/article/details/77184926
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 25岁的心里话
· 按钮权限的设计及实现