已知Windows公共控件库包含工具条控件,树视图控件,ListView控件;参见;

https://blog.csdn.net/bcbobo21cn/article/details/106287676

https://blog.csdn.net/bcbobo21cn/article/details/106299245

https://blog.csdn.net/bcbobo21cn/article/details/106289420

来看一下此DLL是否还包含其他控件或函数;就是这个comctl32.dll;

看下还有xxxMRUxxx函数,这个应是处理 最近打开文件列表 的函数;

然后还有属性页控件;CreatePropertySheetPage;

DPAxxx不知道干嘛的;查了一下好像是 文档类型......;

滚动条函数或控件;

图像列表控件;这个和工具条配合使用的,往工具条里面添加图标的;

然后就是些没有名字的函数;估计没用;

下面来创建一下属性页控件看看;

#include <windows.h>
#include <commctrl.h>
#include "resource.h"LRESULT CALLBACK WindowProcedure (HWND, UINT, WPARAM, LPARAM);
BOOL CALLBACK PPYProc(HWND , UINT , WPARAM , LPARAM );HINSTANCE hInst;
TCHAR szClassName[] = TEXT("ppyDemo");int WINAPI
WinMain (HINSTANCE hThisInstance,HINSTANCE hPrevInstance,LPSTR lpszArgument,int nFunsterStil)
{HWND hwnd;MSG messages;WNDCLASSEX wincl;hInst = hThisInstance;wincl.hInstance = hThisInstance;wincl.lpszClassName = szClassName;wincl.lpfnWndProc = WindowProcedure;wincl.style = CS_DBLCLKS;wincl.cbSize = sizeof (WNDCLASSEX);wincl.hIcon = LoadIcon (NULL, IDI_APPLICATION);wincl.hIconSm = LoadIcon (NULL, IDI_APPLICATION);wincl.hCursor = LoadCursor (NULL, IDC_ARROW);wincl.lpszMenuName = MAKEINTRESOURCE (IDC_PPYDEMO);wincl.cbClsExtra = 0;wincl.cbWndExtra = 0;wincl.hbrBackground = (HBRUSH)(COLOR_WINDOW+1);if (!RegisterClassEx (&wincl))return 0;hwnd = CreateWindowEx (0,szClassName,TEXT("ppyDemo"),WS_OVERLAPPEDWINDOW,CW_USEDEFAULT,CW_USEDEFAULT,400,400,HWND_DESKTOP,NULL,hThisInstance,NULL);ShowWindow (hwnd, nFunsterStil);while (GetMessage (&messages, NULL, 0, 0)){TranslateMessage(&messages);DispatchMessage(&messages);}return messages.wParam;
}LRESULT CALLBACK
WindowProcedure (HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam)
{PAINTSTRUCT ps;HDC hdc;RECT rt;int ret;char szBuffer[100];PROPSHEETPAGE psp={0};HPROPSHEETPAGE hsp;switch (message){case WM_COMMAND:switch (LOWORD(wParam)){case IDM_ppy://psp.pszHeaderTitle="属性页1";//psp.pszHeaderSubTitle="属性页1-001";psp.dwSize=sizeof(PROPSHEETPAGE);psp.dwFlags=PSP_DEFAULT | PSP_USETITLE|PSP_HASHELP|PSP_PREMATURE|PSP_RTLREADING;psp.hInstance=hInst;psp.pszTitle="属性页1";psp.pfnDlgProc=PPYProc;psp.hIcon=NULL;psp.pszIcon=NULL;hsp=CreatePropertySheetPage(&psp);//hsp=PropertySheet(&psp);wsprintf(szBuffer, "创建属性页控件:%x ",hsp);MessageBox(NULL,szBuffer,TEXT("创建属性页"),0);break;case IDM_ABOUT:MessageBox (hwnd, TEXT ("ppyDemo v1.0\nCopyright (C) 2020\n by bo"),TEXT ("ppyDemo"), MB_OK | MB_ICONINFORMATION);break;case IDM_EXIT:DestroyWindow(hwnd);break;default:return DefWindowProc(hwnd, message, wParam, lParam);             }break;case WM_CREATE:break;case WM_PAINT:hdc = BeginPaint(hwnd, &ps);                 GetClientRect(hwnd, &rt);EndPaint(hwnd, &ps);break;case WM_DESTROY:PostQuitMessage (0);break;default:return DefWindowProc (hwnd, message, wParam, lParam);}return 0;
}BOOL CALLBACK PPYProc(HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam)
{switch(uMsg){case WM_INITDIALOG:MessageBox(NULL, "属性页初始化.", "", MB_OK);break;  case WM_KEYDOWN:break;          case WM_COMMAND:return TRUE;case WM_CLOSE:DestroyWindow(hWnd);return TRUE;case WM_DESTROY:PostQuitMessage(0);return TRUE;}return FALSE; // 如果函数不处理消息,则对话框应用程序应该返回零值。
}

运行;属性页创建失败返回0;创建成功;

但是属性页界面不会显示;PROPSHEETPAGE结构体都已经赋值;下回再看;

菜单;

工程;

资源和头文件;

#include "resource.h"
#include <windows.h>/
//
// Menu
//IDC_PPYDEMO MENU
BEGINPOPUP "&File"BEGINMENUITEM "创建属性页控件",    IDM_ppyMENUITEM "E&xit",                    IDM_EXITENDPOPUP "&Help"BEGINMENUITEM "&About ...",             IDM_ABOUTEND
END
#define  IDM_EXIT        10001
#define     IDM_ABOUT       10002#define    IDC_PPYDEMO     10101
#define     IDD_ABOUTBOX    10102
#define     IDM_ppy    40001

win32 属性页控件相关的参考在;这不是MFC里面的属性页控件;

https://docs.microsoft.com/en-us/previous-versions/ms910670(v=msdn.10)
PROPSHEETPAGE
https://docs.microsoft.com/en-us/windows/win32/api/prsht/nf-prsht-createpropertysheetpagea
CreatePropertySheetPageA function

Windows 公共控件库研究相关推荐

  1. Win32使用Windows公共控件库创建工具条

    Win32程序创建工具条,需要使用Windows公共控件库,是另一个DLL:本身Win32 API 是在系统自带的3个DLL: Win7,CFree 5.0:运行结果: 引入lib文件的设置如下: 如 ...

  2. MFC之使用 Windows 标准控件

    使用 Windows 标准控件 为了提高常用代码的复用性,VC 使用控件将常用的诸如用户输入.操作数据等功能封装起来.控件通常放在对话框或工具栏中,分为 3 种:Windows 标准控件.Active ...

  3. 【2017-4-26】Winform 公共控件 菜单和工具栏

    作废 等待重写 名称   功能 取值 赋值 备注 Button 按钮 多用来触发点击事件       CheckBox 多选按钮         CheckedListBox 多选按钮组       ...

  4. wpf项目源代码_C# WPF开源控件库:MahApps.Metro

    C# WPF开源控件库:MahApps.Metro ❝ 其实站长很久之前就知道这个开源WPF控件库了,只是一直欣赏不了这种风格,但也star了该项目.每次浏览该仓库时,发现star越来越多,也看到很多 ...

  5. C# WPF开源控件库:MahApps.Metro

    ❝ 其实站长很久之前就知道这个开源WPF控件库了,只是一直欣赏不了这种风格,但也star了该项目.每次浏览该仓库时,发现star越来越多,也看到很多网友对它的褒奖,所以今天就向大家推荐这款WPF控件库 ...

  6. 【番外篇】ASP.NET MVC快速入门之免费jQuery控件库(MVC5+EF6)

    目录 [第一篇]ASP.NET MVC快速入门之数据库操作(MVC5+EF6) [第二篇]ASP.NET MVC快速入门之数据注解(MVC5+EF6) [第三篇]ASP.NET MVC快速入门之安全策 ...

  7. 很棒的WPF控件库 Newbeecoder.UI

    Newbeecoder.UI是一个强大的WPF基于MVVM框架和控件库实用程序.它支持窗口边框阴影,窗口圆角,包含许多优雅的控件.它让开发人员更高效.更快地创建漂亮的WPF构建应用程序.它支持从4.0 ...

  8. Winform下ToolStrip承载自定义控件或 Windows 窗体控件。

     如题,使用ToolStripControlHost. 先看MSDN上介绍的: ToolStripControlHost  是 ToolStripComboBox.ToolStripTextBox ...

  9. Win32公共控件 - 状态栏和工具栏

    本篇是介绍公共控件系列文章的第2部分,描述了两种新的公共控件:状态栏和工具栏.本系列的其它文章涵盖了以下主题: 第1部分:基础 第3部分:滑动条.进度条和上下控件 第4部分:表头窗口和列表视图窗口 第 ...

最新文章

  1. python获取文本光标_使用python readline时如何获取(并设置)当前bash光标位置?
  2. iis应用程序池监控方法实例
  3. 华为二面!!!被问常用API,这也太偏门了吧,我秀了一波hhhh~
  4. Android 换肤demo,轻量快捷接入集成,判断是否夜间模式
  5. leetcode349. 两个数组的交集
  6. Oracle 11g安装(window)的7个服务
  7. 汇编笔记-DOSBox安装和使用
  8. [渝粤教育] 中国地质大学 审计学 复习题
  9. linux .o,.a,.so文件区别是什么
  10. 一文读懂 K8s 持久化存储 | 凌云时刻
  11. ListView嵌套GridView使用解析
  12. python pandas读取txt文件_Pandas 读取txt
  13. C# Winform生成条码二维码
  14. 1离线TiDB-Ansible 部署问题-总结
  15. 考研英语近义词与反义词·八
  16. Rhyme/Spring是如何简化Java开发的(POJO、DI、AOP、模板)
  17. win10 激活方式
  18. android ble notify,Android Ble notify功能踩坑
  19. web攻击日志分析之入门指南
  20. 游戏开发-2022-11-30-马戏团

热门文章

  1. 有关递归的三道算法题总结
  2. 关于Icon,Image,ImageIcon的简单的对比参考
  3. Mac Oracle SQL Developer “欢迎使用“页卡死,解决办法
  4. Windows 技术篇 - 电脑秒速关机设置方法,注册表修改3个缓冲等待时间
  5. WeUI用Toast组件显示Loading
  6. CodeBlacks16\17\20版本下载
  7. CTFshow 信息收集 web6
  8. 第七周实践项目6 停车场模拟(栈和队列综合)
  9. Python基础06 循环
  10. 爬取广州所有停车场数据(Python)