我自定义了一个WM_SYSCOMMAND消息的处理过程
procedure a(var msg:TWMSYSCOMMAND);message WM_SYSCOMMANM;if msg.cmdtype and $FFF0 =SC_CLOSE then
hide
else
inherited
end;我第一次点击窗体的右上角的‘关闭’时,可以隐藏窗体,但是恢复后第二次就没有反映了,请问怎么回事?
procedure a(var msg:TWMSYSCOMMAND);message WM_SYSCOMMANM;if msg.cmdtype and $FFF0 =SC_CLOSE then
hide
else
inherited
end;我第一次点击窗体的右上角的‘关闭’时,可以隐藏窗体,但是恢复后第二次就没有反映了,请问怎么回事?
解决方案 »
- 支持三J当大版 嘿嘿 是该换换界了.....(两年了放点分不容易哎~~)
- 请问哪里有Delphi的开发工具下载?
- dbgrid 自动刷新!
- filter函数的简单问题,急!!!!!
- 如何在form上,直接输出数值?
- 高分相求!!!有没有象安培表(半园)型的仪表控件???急!!!!!!!!!!!!!
- 使用ADO联接SQL2000时出现以下的错误,怎么办?
- 兄弟们解决解决没办法了哎呀!!!!!急!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!急急!!!!!!!!!!站等
- 这样的问题SQL应该怎么写呢,请高手看看。
- 原xp下的delphi程序 调用excel的一些功能 在win7下不行 如何解决
- 哪里有单个的好看的按钮控件?集成的编译完太大
- 在win2000中编的程序到windows xp中运行出错,请问是怎么回事?
WM_SYSCOMMANM应为WM_SYSCOMMAND
试了一下,没问题的。
//以上为语误,改为
procedure a(var msg:TWMSYSCOMMAND);message WM_SYSCOMMAND;
sendmessage(handle,WM_SYSCOMMAND,SC_MAXNIMIZED,0)
ShowWindow(Handle, SW_SHOWMAXIMIZED);
Visible := True; // 加上这句这是因为前面调用Hide时,Form的Visible变为False了,如果只调用ShowWindow(Handle, SW_SHOWMAXIMIZED);的话,因为这是系统API,并不会把Visible设为True,所以再次Hide时并不会起作用(你可以看看Form源码)。