白桦的天空

第一次的心动,永远的心痛!
  首页  :: 新随笔  :: 联系 :: 管理

PPC全屏(C#)(转)

Posted on 2009-05-08 16:50  白桦的天空  阅读(291)  评论(0编辑  收藏  举报

PPC全屏(C#)(转)

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Windows.Forms;
using System.Runtime.InteropServices;
using System.Text;
namespace Hello_World
{
     public partial class StartForm : Form
{
private Timer timer;
public StartForm()
{
InitializeComponent();
IntPtr hWnd = API.FindWindow(this.Text);
if (hWnd != IntPtr.Zero)
{
System.Diagnostics.Debug.WriteLine("hWnd ist nicht null");
this.MaximizeBox = false;
this.MinimizeBox = false;
this.Focus();
SHAPI.SetForegroundWindow(hWnd);
SHAPI.FullScreen(hWnd);
}
}
}
public class API
{
[DllImport("coredll.dll", EntryPoint = "FindWindow")]
private extern static IntPtr FindWindow(string lpClassName, string lpWindowName);
public static IntPtr FindWindow(string windowName)
{
return FindWindow(null, windowName);
}
}
public class SHAPI
{
public const int SHFS_SHOWTASKBAR = 1;
public const int SHFS_HIDETASKBAR = 2;
public const int SHFS_SHOWSIPBUTTON = 4;
public const int SHFS_HIDESIPBUTTON = 8;
public const int SHFS_SHOWSTARTICON = 16;
public const int SHFS_HIDESTARTICON = 32;
[DllImport("aygshell.dll")]
private extern static bool SHFullScreen(IntPtr hWnd, int dwState);
public static bool FullScreen(IntPtr hWnd)
{
return SHFullScreen(hWnd, SHFS_HIDESTARTICON | SHFS_HIDETASKBAR);
}
[DllImport("coredll.dll")]
internal static extern int SetForegroundWindow(IntPtr hWnd);
}
} 
 




下面的代码仅仅隐藏开始菜单但程序退出后会重现:

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Windows.Forms;
using System.Runtime.InteropServices;
using System.Text;
namespace Wm5ppc
{
public partial class Form1 : Form
{
public Form1 ()
{
InitializeComponent ();
this.MinimizeBox = false;
}
private void Form1_Activated (object sender, EventArgs e)
{
IntPtr hWnd = this.Handle;
SHAPI.FullScreen (hWnd);
}
}
public class SHAPI
{
public const int SHFS_SHOWTASKBAR = 1;
public const int SHFS_HIDETASKBAR = 2;
public const int SHFS_SHOWSIPBUTTON = 4;
public const int SHFS_HIDESIPBUTTON = 8;
public const int SHFS_SHOWSTARTICON = 16;
public const int SHFS_HIDESTARTICON = 32;
      [DllImport ("aygshell.dll")]
private extern static bool SHFullScreen (IntPtr hWnd, int dwState);
public static bool FullScreen (IntPtr hWnd)
{
return SHFullScreen (hWnd, SHFS_HIDESTARTICON);
}
}
}