使用自定义消息:
.H
建立消息映射表:
public: // User declarations
__fastcall TForm1(TComponent* Owner);
BEGIN_MESSAGE_MAP
MESSAGE_HANDLER(WM_SYSCOMMAND,TMessage,Mymsg)
END_MESSAGE_MAP(TForm)
...
其中WM_SYSCOMMAND為Windows消息名,Mymsg為消息處理函數.
函數Mymsg:
void __fastcall Mymsg(TMessage &Msg)
{
if (Msg.WParam==SC_MINIMIZE)
Hide();
TForm::Dispatch(&msg);//讓消息繼續傳遞下去,如果沒有這一句,消息將被完全攔截,VCL類可能由于得不到消息而無法實現正常功能
}