读书人

delphi热键重复按下隐藏form的有关问题

发布时间: 2012-03-03 15:33:03 作者: rapoo

delphi热键重复按下隐藏form的问题
procedure TmainForm.Wmhotkeyhandle
(var msg:Tmessage);

begin
//判断是否是ctrl+R
if (msg.LParamHi=$52) and
(msg.lparamLo=MOD_CONTROL) then
begin
msg.Result:=1; //正常返回
//隐藏窗体.
mainform.Hide;
end;

如上我代码,按下ctrl+r 后会隐藏窗体,如何再次按下显示. 麻烦给出简单代码.
如通过先判断form是否隐藏来对应显示显示等.达到效果就行.

[解决办法]
你可以用一个变量,比如初始化用
procedure TmainForm.Wmhotkeyhandle
(var msg:Tmessage);
var i:ingeger;
begin

//判断是否是ctrl+R
if (msg.LParamHi=$52) and (msg.lparamLo=MOD_CONTROL) then
if (i=0) then
begin
i:=1;
msg.Result:=1; //正常返回
//隐藏窗体.
mainform.Hide;

end
else
begin
mainform.show;
i:=0
end;
end;

读书人网 >.NET

热点推荐