博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Windows 编程[7] - WM_CREATE 消息
阅读量:5756 次
发布时间:2019-06-18

本文共 1231 字,大约阅读时间需要 4 分钟。

  hot3.png

本次我把生成窗口的过程做了简化, 以凸现新注入的代码; 本例效果图:
26153257_Ctn1.png

program Project1;uses  Windows, Messages;function WndProc(wnd: HWND; msg: UINT; wParam: Integer; lParam: Integer): Integer; stdcall;begin  Result := 0;  case msg of    WM_CREATE : MessageBeep(48);    {在收到 WM_CREATE 消息时发出一个声音}    WM_DESTROY: PostQuitMessage(0);  else    Result := DefWindowProc(wnd, msg, wParam, lParam);  end;end;function RegMyWndClass: Boolean;var  cls: TWndClass;begin  cls.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;{程序入口}const  tit = 'New Form';  ws = WS_OVERLAPPEDWINDOW;  x = 100; y = 100; w = 300; h = 180;var  hWnd: THandle;  Msg : TMsg;begin  RegMyWndClass;  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)) do  begin    TranslateMessage(Msg);    DispatchMessage(Msg);  end;end.

转载于:https://my.oschina.net/hermer/blog/319667

你可能感兴趣的文章
Python List 中 Append 和 Extent 方法不返回值。
查看>>
linux ssh 无密码登陆
查看>>
jquery中美元符号命名冲突问题解决
查看>>
WebSocket 学习笔记--IE,IOS,Android等设备的兼容性问题与代码实现
查看>>
grep时排除指定的文件和目录
查看>>
ORACLE学习笔记 translate,REGEXP_replace
查看>>
C#中对于float,double,decimal的误解
查看>>
相关文章收藏
查看>>
先序 中序 后序
查看>>
lync2013 错误: 已为不同的传输层安全性(TLS)目标找到类型为“McxInternal”且完全限定的域名(FQDN)为...
查看>>
sql点滴41—mysql常见sql语法
查看>>
基于NSIS脚本开发的安装程序制作软件:易量安装
查看>>
SQLServer表变量对IO及内存影响测试
查看>>
编写高质量代码改善C#程序的157个建议[1-3]
查看>>
PHP字符串
查看>>
Permutation Sequence
查看>>
cocos2d-x Vector 使用心得
查看>>
PHP程序员面临的成长瓶颈
查看>>
Android Layout_weight 属性
查看>>
MySQL存储引擎比较
查看>>