C#:如何使窗口真正全屏

时间:2017-08-20 16:13:42

标签: c# window fullscreen

您好我想问一下如何让C#应用程序中的窗口真正变得完整,是否可能?我不是指设置最大化和未修饰的方法,而是像在java中通过将窗口设置为全屏来实现真正的全屏(我的意思是这样我可以在应用程序中切换屏幕分辨率,如果我从应用程序中选择alt-tab切换回正常分辨率[至少应该有winapi方式,因为它可以在java中使用])

1 个答案:

答案 0 :(得分:0)

简单,在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;
            }
        }
    }

这将使您与FullScreen和普通模式交替使用。

如果您想在用户alt-tab退出应用程序时返回到正常模式,请将代码添加到表单的deactivate事件中:

    private void Form1_Deactivate(object sender, EventArgs e)
    {
        if (FormBorderStyle == FormBorderStyle.None)
        {
            FormBorderStyle = FormBorderStyle.Sizable;
            WindowState = FormWindowState.Normal;
        }
    }