首页 > Windows 编程[9] - WM_CLOSE 消息

Windows 编程[9] - WM_CLOSE 消息

本例效果图:



o_84182.gif
program Project1;usesWindows, Messages;{供 WM_CLOSE 消息调用的自定义过程}
procedure OnClose(h: HWND);
beginif IDOK = MessageBox(h, '确认关闭吗?', '提示', MB_OKCANCEL) thenDestroyWindow(h);
end;function WndProc(wnd: HWND; msg: UINT; wParam: Integer; lParam: Integer): Integer; stdcall;
beginResult := 0;case msg ofWM_CLOSE  : OnClose(wnd); {在收到 WM_CLOSE 消息时调用自定义的 OnClose 过程}WM_DESTROY: PostQuitMessage(0);elseResult := DefWindowProc(wnd, msg, wParam, lParam);end;
end;function RegMyWndClass: Boolean;
varcls: TWndClass;
begincls.style         := CS_HREDRAW or CS_VREDRAW;cls.lpfnWndProc   := @WndProc;cls.cbClsExtra    := 0;cls.cbWndExtra    := 0;cls.hInstance     := HInstance;cls.hIcon         := 0;cls.hCursor       := LoadCursor(0, IDC_ARROW);cls.hbrBackground := HBRUSH(COLOR_WINDOW + 1);cls.lpszMenuName  := nil;cls.lpszClassName := 'MyWnd';Result := RegisterClass(cls) <> 0;
end;{程序入口}
consttit = 'New Form';ws = WS_OVERLAPPEDWINDOW;x = 100; y = 100; w = 300; h = 180;
varhWnd: THandle;Msg : TMsg;
beginRegMyWndClass;hWnd := CreateWindow('MyWnd', tit, ws, x, y, w, h, 0, 0, HInstance, nil);ShowWindow(hWnd, SW_SHOWNORMAL);UpdateWindow(hWnd);while(GetMessage(Msg, 0, 0, 0)) dobeginTranslateMessage(Msg);DispatchMessage(Msg);end;
end.

转载于:https://www.cnblogs.com/del/archive/2008/04/18/1160505.html

更多相关:

  • CFAbsoluteTime start = CFAbsoluteTimeGetCurrent(); //在这写入要计算时间的代码 // do something CFAbsoluteTime end = CFAbsoluteTimeGetCurrent(); NSLog(@"%f", end - start); 转载于:ht...

  • Given a sorted integer array without duplicates, return the summary of its ranges. For example, given [0,1,2,4,5,7], return ["0->2","4->5","7"]. 代码要求对数组中的元素进行分段。 首先给...

  • Hello,此BAT脚本能够帮助开发者将某目录下全部SQL脚本按文件名称依次在指定数据库中批量执行。不用忍受powershell invoke-sqlcmd 的笨重。在指执行时多一种选择。 bat文件 @echo off @REM ******** ******** General Batch for Starting SQL...

  • Description 设有一个n×m(小于100)的方格(如图所示),在方格中去掉某些点,方格中的数字代表距离(为小于100的数,如果为0表示去掉的点),试找出一条从A(左上角)到B(右下角)的路径,经过的距离和为最小(此时称为最小代价),从A出发的方向只能向右,或者向下。 Sample Input 4 4 4 10 7 0...

  • 有些Windows聚焦图片确实很漂亮,很希望保留下来,但是Windows聚焦图片总更好,网上有得到聚焦图片的方法,每次都手动去弄真麻烦,于是自己编了一个小程序,自动得到Windows聚焦图片,下面是运行这个小程序得到Windows聚焦图片的效果! 小工具以及源码下载:http://download.csdn.net/detail/su...

  • ---- 创建任务 DECLAREp_project_id NUMBER := 155233;p_task_number VARCHAR2(240) := 'CXYTEST0001';p_task_name VARCHAR2(240) := '接口测试CXYTEST0...