日期:2014-05-20  浏览次数:20773 次

《求助》重绘窗体的问题!高手请进...
我在窗体代码里重载了WndProc方法后。。。    
在窗体的Load事件打开一个MessageBox;但是奇怪的是:MessageBox却无法得到急点?那是为什么呢???    
 
WndProc方法的代码是:    
switch(me.Msg)    
{    
case     0x1F://注意:这是窗体失去焦点时的消息值    
<简略代码>    
me.Result     =     (IntPtr)     me.Msg;    
base.WndProc(ref     me);    
break;    
case     0x0084:    
<简略代码>    
break;    
case     0x86://WM_NCACTIVATE    
case     0x85://WM_NCPAINT    
<简略代码>    
break;    
case     0xA0:    
<简略代码>    
break;    
case     0xA1:    
<简略代码>    
break;    
case     0x00A2:    
<简略代码>    
break;    
case     0x00A3:    
<简略代码>    
break;    
case     0x0112:    
<简略代码>    
break;    
default:    
base.WndProc(ref     me);    
break;    
}    
<简略代码> 的地方都是输出的....    
 
大家一起看看吧!在WndProc方法加上如上代码后,运行窗体时,通过事件或按钮打开MessageBox或者其他的模式窗体,模式窗体都无法得到焦点的。。。    
 
谁可以告诉我,在打开模式窗体的时候 <     me.Msg     > 的值是多少???    
好像我这种情况用什么方法处理才可以解决???

------解决方案--------------------
帮LZ顶
------解决方案--------------------
...

------解决方案--------------------
图片透明的地方总会粘上其他窗体的颜色!
--------------------------
把图片写在OnPaint里

把窗体原来的样式通通去掉(包括标题栏、边框和客户区)...
--------------------------
用API,SetWindowLong