怎样捕捉窗口被大小化的事件? form's onresize eventprocedure TForm1.FormResize(Sender: TObject);beginend; 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 如果窗体是程序主窗体则在Application的OnMinimize和OnRestore中触发;如果是程序的其中一个窗体则在窗体的OnResize、OnActive和OnDeActive事件中触发,在触发的时候需要判断窗体的状态,如当窗体刚创建时会先后触发OnActive、OnResize事件,这时就需要在事件中自己来判断。 我理解你的意思,是想捕捉窗口被最大(小)化的事件,FormResize虽然行,但都是执行完后才发生,如想自己控制最好重载WndProc函数,过滤WM_SYSCOMMAND消息或者重载WM_GETMINMAXINFO消息:protected procedure WndProc(var Message: TMessage); Override; procedure WMGetMinMaxInfo(var mmi: TGetMinMaxInfo); message WM_GETMINMAXINFO;...procedure TfrmMain.WndProc(var Message: TMessage);begin case Message.Msg of WM_SYSCOMMAND: case Message.WParam of SC_MAXIMIZE: //最大化 //Do something ... SC_MINIMIZE: //最小化 //Do something ... else Inherited; end; else Inherited; end;end; 请问谁有 delphi7 入门电子书?最好要清晰地,麻烦你们了 电子签章的核心问题 用FastReport做的报表,如何在程序中改变页幅的大小及打印方向。?? 数据更新问题 DdGrid与ScrollBar的问题??? 子窗口问题 关于mscomm控件接收数据的问题,希望能得到大家的帮助 我的机子运行了几个用bde连接数据库的程序,在delphi里就打开不了src了出现以下错误! 关于SQLServer的事务处理。 经典代码 Windows 3.2 下直接I/O控制 怎样用DELPHI做历史记录?
如果是程序的其中一个窗体则在窗体的OnResize、OnActive和OnDeActive事件中触发,在触发的时候需要判断窗体的状态,如当窗体刚创建时会先后触发OnActive、OnResize事件,这时就需要在事件中自己来判断。
protected
procedure WndProc(var Message: TMessage); Override;
procedure WMGetMinMaxInfo(var mmi: TGetMinMaxInfo); message WM_GETMINMAXINFO;
...procedure TfrmMain.WndProc(var Message: TMessage);
begin
case Message.Msg of
WM_SYSCOMMAND:
case Message.WParam of
SC_MAXIMIZE: //最大化
//Do something
...
SC_MINIMIZE: //最小化
//Do something
...
else Inherited;
end;
else Inherited;
end;
end;