随笔分类 - 【05】VC++
摘要:### 宽字符阅读了 [UTF-8 Everywhere][1] 一文,推荐在程序中对于字符串都使用 UTF-8 编码。Unix-like 系统默认是支持 UTF-8 编码的Unicode字符串,标准库函数也默认支持 UTF-8 字符串,如 `fopen` 等。但在 Windows 系统,由于历史原...
阅读全文
摘要:
利用WM_NCHITTEST消息实现无标题窗口的拖动,Windows首先确定鼠标点中了哪个窗口,然后向那个窗口发送一个WM_NCHITTEST消息找出此窗口的哪个"非客户区"(如边界、最大化/最小化按钮、菜单、标题等等)拥有鼠标光标。接着默认的窗口过程响应消息并返回一个特定的代码。如果鼠标指针落在标题栏中,那么这个特定代码就是HTCAPTION,此时Windows便进入拖拽模式,以便用户能够对窗口进行移动操作。所以要想在客户区里用鼠标拖动对话框,那么只要在客户区里模仿标题栏里的鼠标拖动行为即可
阅读全文
利用WM_NCHITTEST消息实现无标题窗口的拖动,Windows首先确定鼠标点中了哪个窗口,然后向那个窗口发送一个WM_NCHITTEST消息找出此窗口的哪个"非客户区"(如边界、最大化/最小化按钮、菜单、标题等等)拥有鼠标光标。接着默认的窗口过程响应消息并返回一个特定的代码。如果鼠标指针落在标题栏中,那么这个特定代码就是HTCAPTION,此时Windows便进入拖拽模式,以便用户能够对窗口进行移动操作。所以要想在客户区里用鼠标拖动对话框,那么只要在客户区里模仿标题栏里的鼠标拖动行为即可
阅读全文
摘要:
只有客户区的单文档
要创建只有客户区的窗口,主要是窗口框架创建前更改默认的窗口风格:
阅读全文
只有客户区的单文档
要创建只有客户区的窗口,主要是窗口框架创建前更改默认的窗口风格:
阅读全文
摘要:
窗口最大或最小化时动态更改应用程序图标
判断窗口是最小化,最大化还是正常态利用窗口的WM_SIZE消息来获取窗口状态的消息,WM_SIZE消息有五种值其中最常用的三种分别是:
SIZE_RESTORED:窗口被还原时产生的消息。
SIZE_MINIMIZED:窗口最小化时产生的消息。
SIZE_MAXIMIZED:窗口最大化时产生的消息。
更改应用程序图标则用到了CWnd::SetIcon()函数。可以先用CWinApp::LoadIcon()从应用程序资源中载入图标
阅读全文
窗口最大或最小化时动态更改应用程序图标
判断窗口是最小化,最大化还是正常态利用窗口的WM_SIZE消息来获取窗口状态的消息,WM_SIZE消息有五种值其中最常用的三种分别是:
SIZE_RESTORED:窗口被还原时产生的消息。
SIZE_MINIMIZED:窗口最小化时产生的消息。
SIZE_MAXIMIZED:窗口最大化时产生的消息。
更改应用程序图标则用到了CWnd::SetIcon()函数。可以先用CWinApp::LoadIcon()从应用程序资源中载入图标
阅读全文
浙公网安备 33010602011771号