本文实例讲述了WinForm实现窗体最大化并遮盖任务栏的方法。分享给大家供大家参考。具体实现方法如下:
?| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 |
using System;
using System.Windows.Forms;
using System.Drawing;
namespace CSImageFullScreenSlideShow
{
public class FullScreen
{
private FormWindowState winState;
private FormBorderStyle brdStyle;
private bool topMost;
private Rectangle bounds;
public FullScreen()
{
IsFullScreen = false;
}
public bool IsFullScreen
{
get;
set;
}
public void EnterFullScreen(Form targetForm)
{
if (!IsFullScreen)
{
Save(targetForm); // Save the original form state.
targetForm.WindowState = FormWindowState.Maximized;
targetForm.FormBorderStyle = FormBorderStyle.None;
targetForm.TopMost = true;
targetForm.Bounds = Screen.GetBounds(targetForm);
IsFullScreen = true;
}
}
/// <summary>
/// Save the current Window state.
/// </summary>
private void Save(Form targetForm)
{
winState = targetForm.WindowState;
brdStyle = targetForm.FormBorderStyle;
topMost = targetForm.TopMost;
bounds = targetForm.Bounds;
}
/// <summary>
/// Leave the full screen mode and restore the original window state.
/// </summary>
public void LeaveFullScreen(Form targetForm)
{
if (IsFullScreen)
{
// Restore the original Window state.
targetForm.WindowState = winState;
targetForm.FormBorderStyle = brdStyle;
targetForm.TopMost = topMost;
targetForm.Bounds = bounds;
IsFullScreen = false;
}
}
}
}
|
调用:
?| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 |
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
namespace CSImageFullScreenSlideShow
{
public partial class Test : Form
{
public Test()
{
InitializeComponent();
}
private FullScreen fullScreen = new FullScreen();
private void button1_Click(object sender, EventArgs e)
{
if (fullScreen.IsFullScreen)
{
fullScreen.LeaveFullScreen(this);
}
else
{
fullScreen.EnterFullScreen(this);
}
}
}
}
|
希望本文所述对大家的C#程序设计有所帮助。








发表评论
◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。