C#:如何使 window 真正全屏显示
C#: How to make window go really fullscreen
你好我想问一下如何让C#应用程序中的window真正全屏,是否可能?我也不是指设置最大化和未修饰的方法,而是像 java 中那样真正的全屏,通过将 window 设置为全屏(我的意思是这样我可以在应用程序中切换屏幕分辨率,如果我 alt-从应用程序中切换回正常分辨率[至少应该有 winapi 方法,因为在 java 中是可能的])
简单,在 Windows 表单中,您需要使用 FormBorderStyle 和 WindowState
这是一个示例:
private void Form1_KeyPress(object sender, KeyPressEventArgs e)
{
if (e.KeyChar == 'F')
{
if (FormBorderStyle == FormBorderStyle.None)
{
FormBorderStyle = FormBorderStyle.Sizable;
WindowState = FormWindowState.Normal;
}
else
{
FormBorderStyle = FormBorderStyle.None;
WindowState = FormWindowState.Maximized;
}
}
}
这将使您从全屏模式和正常模式切换。
如果您想在用户按 alt-tab 退出应用程序时返回正常模式,请将代码添加到表单的停用事件中:
private void Form1_Deactivate(object sender, EventArgs e)
{
if (FormBorderStyle == FormBorderStyle.None)
{
FormBorderStyle = FormBorderStyle.Sizable;
WindowState = FormWindowState.Normal;
}
}
你好我想问一下如何让C#应用程序中的window真正全屏,是否可能?我也不是指设置最大化和未修饰的方法,而是像 java 中那样真正的全屏,通过将 window 设置为全屏(我的意思是这样我可以在应用程序中切换屏幕分辨率,如果我 alt-从应用程序中切换回正常分辨率[至少应该有 winapi 方法,因为在 java 中是可能的])
简单,在 Windows 表单中,您需要使用 FormBorderStyle 和 WindowState
这是一个示例:
private void Form1_KeyPress(object sender, KeyPressEventArgs e)
{
if (e.KeyChar == 'F')
{
if (FormBorderStyle == FormBorderStyle.None)
{
FormBorderStyle = FormBorderStyle.Sizable;
WindowState = FormWindowState.Normal;
}
else
{
FormBorderStyle = FormBorderStyle.None;
WindowState = FormWindowState.Maximized;
}
}
}
这将使您从全屏模式和正常模式切换。
如果您想在用户按 alt-tab 退出应用程序时返回正常模式,请将代码添加到表单的停用事件中:
private void Form1_Deactivate(object sender, EventArgs e)
{
if (FormBorderStyle == FormBorderStyle.None)
{
FormBorderStyle = FormBorderStyle.Sizable;
WindowState = FormWindowState.Normal;
}
}