窗口最小化的问题,请指点一下(50分)

Y

yayiye

Unregistered / Unconfirmed
GUEST, unregistred user!
我想在窗口最小化的时候(也就是点击最小化按钮的时候),要隐藏窗口而不是最小化窗口
<code>
procedure WMSysCommand(var Msg: TWMSysCommand);
begin
if Msg.CmdType = SC_MINIMIZE then
Self.Visible :=False;
end;
</code>
这样是解决了问题,但是窗口只能响应最小化事件,其它事件的消息都被屏蔽了。
有谁知道解决方法,指点一下。
 
还少了一句 inherited 吧,函数声明的后面应该加上override,试试吧,我也不能确定
 
对应该还有inherited
 
加了inherited
窗体就真正最小化了,我想窗口不最小化,只是隐藏起来
 
case Msg.CmdType of
SC_MINIMIZE:Hide
else
inherited;
end;
 
在 FormCreate 事件中加上
SetWindowLong(Application.Handle, GWL_EXSTYLE, WS_EX_TOOLWINDOW);
就可以实现你的需求!
 
procedure WMSysCommand(var Msg: TWMSysCommand);
begin
if Msg.CmdType = SC_MINIMIZE then
Self.Visible :=False
else
inherited;
end
 
多人接受答案了。
 
顶部