随笔分类 -  Windows SDK编程

摘要:需求:对话框中的Edit Control只能输入字母和数字。 解决方案:替换Edit Control的WndProc,在收到WM_CHAR时判断是否合法,合法则调用原来的WndProc,否则直接返回。收到其他类型的消息时也调用原来的WndProc。最好通过CallWindowProc调用,而不是直接 阅读全文
posted @ 2020-07-02 07:17 八转达人 阅读(181) 评论(0) 推荐(0)
摘要:一. 发送消息 1. SendMessage: 调用窗口过程函数,并且等待窗口过程函数处理完毕才返回。 2. PostMessage: 将消息投递到消息队列,不等待处理,立即返回。 3. 自定义消息: 大于等于WM_USER 二. 对话框 1. 模态对话框 1. 代码写法 1. 设计对话框资源模板 阅读全文
posted @ 2020-06-29 14:05 八转达人 阅读(152) 评论(0) 推荐(0)
摘要:一. 资源的命名 资源编辑器中可以将资源的ID命名为字符串,调用时使用: wndclass.hIcon = LoadIcon(hInstance, TEXT("icon1")); 也可以命名为非字符串,调用时使用: wndclass.hCursor = LoadCursor(hInstance, M 阅读全文
posted @ 2020-06-25 12:06 八转达人 阅读(126) 评论(0) 推荐(0)
摘要:一. 绘图消息WM_PAINT WM_PAINT消息出现时机: 1.窗口创建 2.窗口尺寸改变 3.最大最小化 4.从隐藏到显示 5.从屏幕外到屏幕内 窗口对象中保存了无效区,如果存在无效区,系统就会一直发送WM_PAINT消息。BeginPaint会清掉无效区,GetDC则不会。 系统没发送WM_ 阅读全文
posted @ 2020-06-24 10:51 八转达人 阅读(161) 评论(0) 推荐(0)
摘要:一. windows程序和控制台程序的区别: 1. 入口点不同: Window程序: int __stdcall wWinMain( HINSTANCE hInstance, HINSTANCE hPrevInstance, LPWSTR lpCmdLine, int nCmdShow); 控制台程 阅读全文
posted @ 2020-06-22 09:57 八转达人 阅读(660) 评论(0) 推荐(0)