拦截消息,获得最小化消息时,最小化主Form!
解决方案 »
- 用ADD增加字段时如何为数值型字段指定字段长度?
- 问一下SynEdit组件的安装问题
- 兄弟在一个步行街上欲租一门面房,消费群体主要是附加2000多户小区客户(多较有钱),大家给我出个注意,看做什么行当有前途!!!
- 如何访问远程数据库??
- 急!!请教一下 LMDTools v6.12.20 Pro控件包在D7下的安装方法,分不够再给。
- 谁明白这个函数怎么用啊?
- 高手求教(请问关于delphi索引怎么做?)
- 学DELPHI能找着工作吗??
- 怎样在报表中实现换行呢?
- 要通过局域网或者Internet连接到MSSQLServer,用ADO组件可以吗?怎么连接?
- 怎样使窗体在满足条件前,不能被任何一种方式关掉?
- 提问!为什么这条语句有错???
begin
if Msg.WParam =SC_MINIMIZE then
...
end;
begin
if Msg.WParam =SC_MINIMIZE then
...
end;
2 :在界面窗体中拦截最小化消息,
if Msg.WParam =SC_MINIMIZE then
SendMessage(主窗.handle,WM_SYSCOMMAND,SC_MINIMIZE,0)
//给主窗发送最小化消息;
恢复时可以控制主窗显示;
procedure Minimize(var M:TWMSYSCOMMAND);message WM_SYSCOMMAND;procedure TForm_Main.Minimize(var M:TWMSYSCOMMAND);
begin
if M.CmdType=SC_Minimize then
ShowWindow(Application.Handle,SW_SHOWMINIMIZED)
else
inherited;
end;
procedure WndProc(var Msg:TMessage);override;
procedure TFrm_Main.WndProc(var Msg: TMessage);
begin
inherited; case Msg .Msg of
WM_SYSCOMMAND :
begin
case Msg .WParam of SC_MINIMIZE :
ShowWindow(Application .Handle ,SW_HIDE );
end;//end inner case
end;//end begin
end;//end outer caseend;