日期:2014-05-18  浏览次数:20682 次

绘图高手请进!关于绘制最大化最小化按钮的问题
我用下面这个函数可以重绘窗体的边框:
 protected override void WndProc(ref Message m)
  {
  IntPtr hDC = GetWindowDC(this.Handle);
  Graphics g = System.Drawing.Graphics.FromHdc(hDC);
  switch (m.Msg )
  {
  case 0x0085:
  case 0x0006:
  drawBorder(g);
  ReleaseDC(this.Handle, hDC);
  break;
  default :
  base.WndProc(ref m);
  break;
   

  }
  g.Dispose();
   
   
  }
请问怎样重绘窗体的最大化、最小化和关闭按钮啊?
重绘这些按钮的时候,m.Msg的值是多小的啊?或者怎么实现!
谢谢!

------解决方案--------------------
把form的风格设置成NULL,即像一个panel一样的光板 
,然后再画~~,可以自己继承panel写一个标题栏控件,override它的onPain,然后把写好的控件拖到风格设置成null的窗体上,并且设置其DOCK为TOP~~这样就ok了~
------解决方案--------------------
探讨
把form的风格设置成NULL,即像一个panel一样的光板
,然后再画~~,可以自己继承panel写一个标题栏控件,override它的onPain,然后把写好的控件拖到风格设置成null的窗体上,并且设置其DOCK为TOP~~这样就ok了~