如何去掉Form的标题栏,且保留系统菜单
RT
------解决方案--------------------用创建不规则窗体的办法把标题栏截掉.
       protected override void OnPaint(System.Windows.Forms.PaintEventArgs e)
       {
           Point[] p1 ={ new Point(3, 15), new Point(766, 15), new Point(766, 209), new Point(3, 209), new Point(3, 15) };
           GraphicsPath shape = new GraphicsPath();
           shape.AddLines(p1);
           this.Region = new Region(shape);
       }
这样的话假定的窗体大小是(766,209),标题栏占用宽15;
你试一下,是可以的.
要添加引用
using System.Drawing.Drawing2D;
using System.Drawing;
------解决方案--------------------//api declear
[DllImport("user32.dll", EntryPoint="SetWindowLong")]
public static extern int SetWindowLong (
	int hwnd,
	int nIndex,
	int dwNewLong
);
[DllImport("user32.dll", EntryPoint="GetWindowLong")]
public static extern int GetWindowLong (
	int hwnd,
	int nIndex
);
public const int GWL_STYLE = (-16);
public const int WS_SYSMENU = 0x80000;
//实现代码
public static void AddSystemMenuToForm(IntPtr WindowHandle)
{
   int oldStyle = GetWindowLong(WindowHandle.ToInt32(),GWL_STYLE);
   SetWindowLong(WindowHandle.ToInt32(),GWL_STYLE,oldStyle|WS_SYSMENU);
}
//调用
AddSystemMenuToForm(this);