(Business Components Gallery ControlBar)专业版是MFC的一个扩展库,您可以用来构建类似于Microsoft Office 2000/XP/2003/2007/2010.../2013 和 Microsoft Visual Studio-like(打印、用户定制工具栏、菜单等)以及其他一些知名产品的高级用户界面,例如:日历、网格、编辑和甘特图等。...BCGControlBar的这个扩展库包含了300多个经过精心设计,测试和具有完备文档的MFC扩展类。BCGControlBar控件能轻松的融入应用程序中,节约大量的的开发和调试时间。...注意:该控件目前的正式名称是”BCGControlBar Professional for MFC”,但原名称”BCGControlBar Library Professional Edition (MFC...---- ---- BCGControlBar系统要求 开发环境 Microsoft Visual C++ 6.0 with Service Pack 4 or higher Microsoft Visual
简语: 最近学习了生成静态链接的dll及其调用,写一下笔录和大家分享,有错误的地方欢迎大家指出来 开发环境 VS2015 开发语言 C++ 开发步骤 以mfc的dll创建为例,先说明一下win32的dll...和mfc的dll在支持C上,win32可能比较好,实现的过程是一样的。...构建MFC的DLL项目 新建MFC DLL项目 ? 这边选择带静态链接MFC的规则DLL ? 默认生成了,头文件和源文件,右键def文件 ?...CMFCTestDLLDlg 消息处理程序 BOOL CMFCTestDLLDlg::OnInitDialog() { CDialogEx::OnInitDialog(); // 将“关于...”菜单项添加到系统菜单中...对于使用文档/视图模型的 MFC 应用程序, // 这将由框架自动完成。
亲爱的BCGSoft用户,我们非常高兴地宣布BCGControlBar Professional for MFC和BCGSuite for MFC v32.2正式发布!...新版本改进的功能区和框架标题命令搜索、带有可选复选框的网格日期选择器、带有标签的功能区滑块等,需要最新版的可以点击这里【BCG下载】 BCGControlBar Pro for MFC v32.2正式版下载...m_Icon – 搜索框图标:light bulb或放大镜。 m_clrHighlighted – 搜索结果菜单中突出显示的文本背景颜色。...您可以通过覆盖 CBCGPFrameWnd 或 CBCGPMDIFrameWnd 派生类中的新虚拟方法 QueryElements 来自定义此搜索。 4....CBCGPribbonEdit:新的虚拟方法 OnDrawIcon 允许在搜索模式下绘制自定义图标。 5. Ribbon Designer:添加了以下新属性 组合框中下拉列表的高度。
是一个光标资源 第八个hbrBackground---窗口类的背景画刷句柄 第九个lpszMenuName----以空终止的字符串---指定菜单资源的名字 第十个lpszClassName----以空终止的字符串...第六个 hIcon 图标句柄 VC++开发中,自定义菜单图标被命名为.rc----------资源脚本 VC++中,资源是通过标识符ID来识别的 ID是在resource.h的宏 他的lpIconname...是一个指针,指向资源 第七个–hCursor是一个光标资源 第八个hbrBackground—窗口类的背景画刷句柄 第九个lpszMenuName----以空终止的字符串—指定菜单资源的名字 菜单不是一个窗口...WS_CAPTION | \ //有标题栏的窗口 WS_SYSMENU | \ //标题栏上带有系统菜单的窗口口...IDC_PENCIL 1~0x6FFF IDI_ 图标资源 IDI_NOTEPAD 1~0x6FFF ID_ 来自菜单项或工具栏的命令 ID_TOOLS_SPELLING 0x8000~0xDFFF
ClassView.h和ClassView.cpp:由CDockablePane类派生出CClassView类,用于实现应用程序界面左侧面板上的Class View。...FileView.h和FileView.cpp:由CDockablePane类派生出CFileView类,用于实现应用程序界面左侧面板上的File View。...4.资源文件 一般我们使用MFC生成窗口程序都会有对话框、图标、菜单等资源,应用程序向导会生成资源相关文件:res目录、HelloWorld.rc文件和Resource.h文件。...res目录:工程文件夹下的res目录中含有应用程序默认图标、工具栏使用图标等图标文件。...HelloWorld.rc:包含默认菜单定义、字符串表和加速键表,指定了默认的About对话框和应用程序默认图标文件等。 Resource.h:含有各种资源的ID定义。
(功能区、可自定义工具栏、菜单等)和一组丰富的专业设计的Microsoft Office和Microsoft Visual Studio类应用程GUI控件,例如图表、日历、网格、编辑器、甘特图等主要产品功能...它不仅仅是一个新控件 - 它是一种新的用户界面理念。功能区控件将传统的工具栏和菜单替换为选项卡式组(类别)。每个选项卡在逻辑上分为面板,每个面板可能包含各种控件和命令按钮。...用户可以简单地在工具栏和菜单之间拖放按钮。“文件”或“编辑”等所有类别都是从应用程序资源自动构建的。自定义机制允许修改工具栏/菜单项的外观,更改项文本/图标,甚至使用库的图像编辑器创建/修改图像。.../粘贴支持拖放支持查找和替换扩展(可定制)撤消/重做支持UNICODE支持CView派生类,可轻松与MFC文档视图体系结构集成。...BCGSuite 包括这些组件以及许多其他专业设计的 GUI 控件。BCGSuite库有100多个经过彻底设计、测试和完整记录的MFC扩展类。
注意,C++是一门语言,而VC则是讲解如何在VC环境下使用MFC类库,学习VC应建立在充分了解C++的基础上的。...学完了C++,最好先找本Win32编程的书,Win32编程是指用Windows API编程,MFC是将众多的API函数进行了封装的类库,用起来方便了不少,但如果没有一些API编程基础,对相关概念不了解,...建议不要等彻底弄明白一句才看下一句,等能做出个菜单、对话框时便回头再看一遍,几遍之后应该就可以大概明白MFC程序的运作了。...等到不看教程便做出这些时,开始逐字逐句的试着理解MFC程序的组织。若看不懂就跳过看下面的。就这样一遍一遍来。如果觉着头大就先歇上2天,等清醒了再接着来,最好在这期间多找些介绍MFC框架的文章。...再过不久,你就可以使用API函数完成一些功能,如在系统托盘加图标,自画列表框等。这时,你也会体会到学习Win32编程的好处了。 最后,建议有时间的话研究一下各种算法。数据结构是一定要看的。
然后我们就可以在该窗口上创建一个Label,即贴一个标签,这个Label可以显示文本、图标、图像等等。...接下来,调用这个Label的pack方法,pack方法属于Pack类(属于几何管理器), tk中的每一个控件都继承自 class Widget(BaseWidget, Pack, Place, Grid...),Widget都继承于Pack,Place,Grid,它们都属于几何管理器类。...Menubutton 菜单按钮控件,由于显示菜单项。...Menu 菜单控件;显示菜单栏,下拉菜单和弹出菜单 Message 消息控件;用来显示多行文本,与label比较类似 Radiobutton 单选按钮控件;显示一个单选的按钮状态 Scale
比如典型的windows应用程序的上面是菜单栏,从菜单栏我们可以选择应用程序提供的各种功能,但是有的功能比较常用,且不能放在第一级菜单,需要进入二级、三级甚至更多的菜单才能选择。...我们这次要一起学习的就是使用纯Windows API函数创建基本的状态栏和菜单栏。如果属性MFC的朋友知道,如果用MFC来做工具栏和菜单栏很简单。...但是使用纯API就麻烦一些了,当然带来的感觉是不一样的,比如要动态创建,使用MFC的资源编辑器就无能为力,但是对于我们今天要使用的API创建方式来说,就显示出他的强大了。...由于工具栏和状态栏都是Windows的通用控件组中的控件,有默认的类名。...程序中创建的Toolbar有三个图标,当程序正常显示,鼠标在某个工具栏按钮上移动,或者处于Disable状态是,会有不同的图片显示,读者可以自己更换其他自己喜欢的图标。
MFC子窗口任务栏显示图标很简单, 只需要在子窗口的初期化函数OnInitDialog()中添加ModifyStyleEx(WS_EX_TOOLWINDOW, WS_EX_APPWINDOW); 主窗口在系统托盘中显示图标以及恢复窗口是参考某位大神的代码...(一) 原理 1、最小化的原理:首先要将窗口隐藏,然后在右下角绘制图标。 ...(二)程序实现 1、自定义消息WM_SHOWTASK: #define WM_SHOWTASK (WM_USER +1) 2、在MFC的::OnSysCommand(UINT nID,...2、恢复界面函数,在头文件中定义消息响应函数 afx_msg LRESULT OnShowTask(WPARAM wParam,LPARAM lParam) ; //wParam接收的是图标的...menu.TrackPopupMenu(TPM_LEFTALIGN,lpoint->x,lpoint->y,this); //确定弹出式菜单的位置 HMENU hmenu
三、类与结构的区别01 四、类与结构的区别02 五、类的继承概念 1、一个mfc程序的例子的核心代码: 2、破解MFC中按钮的例子。 ...实际上我们用MFC去写程序时,我们从来就没有操作过main函数。 它的函数的入口往往就是:某一类的构造函数或者是某一个类指定的成员函数。...,则需要下面的代码 // 来绘制该图标。...CFileDialog cf(TRUE);//这是MFC提供的一个类,功能是:弹出一个文件打开对话框。...因为content实际上是c++的一个类,不是字符串,之所以这样写为了我们操作简单。
创建对话框主要分为两大步: 第一,创建对话框资源,主要包括创建新的对话框模板、设置对话框属性和为对话框添加各种控件; 第二,生成对话框类,主要包括新建对话框类、添加控件变量和控件的消息处理函数等...的Visual C++下选择MFC,中间窗口中选择MFC Application,然后在下面的Name编辑框中键入工程名称, 本例取名“Addition”,在Location编辑框中设置工程的保存路径...CAboutDlg是应用程序的“关于”对话框类,CAdditionApp是由CWinApp派生的类,CAdditionDlg是主对话框类,主对话框也就是应用 程序运行后显示的主要界面。 ...在Resource View视图中可以看到工程Addition的资源树,展开Addition.rc,下面有四个子项:Dialog(对话框)、Icon(图标)、String Table(字 符串表)和Version...ID是资源的唯一标识,本质上是一个无符号整数,一般ID代表的整数值由系统定义,我们无需干涉。 二、对话框模板 可见对于主对话框来说,创建对话框第一步中的创建新的对话框模板已经由系统自动完成了。
在Windows平台下,最常见最流行的编程就是MFC编程了,在网上可以搜索出大把的MFC编程相关的文章,今天我们来讨论另外一种windows下的编程模式,即Windows SDK编程。...这种编程具有更加灵活和强大的控制,能实现一些MFC不易实现甚至难以实现的功能。...hIcon:应用程序的图标句柄。 hCursor:应用程序的光标句柄。 hbrBackground:窗口的背景画刷。...lpszMenuName:菜单名,该名以资源的方式存在。 lpszClassName:窗口类的名字,这个必须指定且不能重复,否则会失败,除非你需要重复的,否则尽量避免。...如果获取到的消息为WM_QUIT,则返回0,于是就退出循环。 通过上面的三部曲,我们就创建了windows程序设计的框架,几乎任何的windows程序都可以在这个框架基础上衍生出来。
CActiveXDemoCtrl 是控件类,我们要做的控件功能基本上就是要在这个类中实现。...如下图所示,我们可以从类视图清楚的看到我们添加的属性和方法名。 ? 3.事件 ACTIVEX通过事件通知容器控件上发生了某些事情。将控件开发人员的某一特定操作识别为事件。...⑥在相应事件中添加代码以创建并绘制对话框和控件 1)为CMyActiveXCtrl类处理WM_CREATE事件,以初始化对话框对象: 左侧选中CMyActiveXCtrl,右侧属性栏选择”消息”那个小图标...1)调试前,设置编译模式为Release,也就是将工具栏中执行小图标旁的Debug改选为Release。...在工具菜单中,将出现“ActiveX控件测试容器”的菜单项,点击该项,将弹出ActiveX控件测试容器程序(即TstCon32.exe),如下图所示: ?
MessageBox()是Win32API函数.后者是mfc中的全局函数.在MFC中能用MessageBox()的地方都能用AfxMessageBox(). afxmessagebox很多其它的时候是用于调试...AfxMessageBox()函数在不论什么类里边都能够使用,而MessageBox()函数仅仅能在CWnd类的继承类中使用。...nType为消息框中显示的button风格和图标风格的组合,能够採用|(或)操作符组合各种风格。...显示问号图标,表示疑问 与AfxMessageBox相似的函数MessageBox,它是CWnd的类成员函数: MessageBox的使用: int MessageBox( LPCTSTR lpszText...nType = MB_OK ); 所以说,MFC里仅仅是少了第一个參数,同一时候第三和第四都有默认值了,这就是它们的差别,其它的同样 同一时候在MFC的窗口类里要调用API的那个,在写成例如以下:
步骤4:创建菜单和菜单项 要在菜单栏上创建菜单和菜单项,我们可以使用 menu_bar 对象的 add_cascade 方法。...,并使用 pack 方法将其添加到主窗口的顶部,并填充整个水平空间。...我们指定了图标、点击按钮时要执行的函数、按钮的文本标签和图标位置(" left "表示图标在标签左侧)。 可以根据需要添加更多的工具按钮,每个按钮代表一个不同的操作。...创建了一个工具栏对象 toolbar ,并使用 pack 方法将其添加到主窗口的顶部,并填充整个水平空间。...使用 toolbar 对象的 add_command 方法来添加工具按钮。我们指定了图标、点击按钮时要执行的函数、按钮的文本标签和图标位置(" left "表示图标在标签左侧)。
chrome web store 上显示 "description": "A plain text description",//图标可以是1个, 或者多个 //一般来说最好的方案是提供3个: //-...获取扩展图标、标题、文字、弹出页等 commands 给扩展添加快捷键 contextMenus 添加选项到右键弹出菜单 cookies 控制cookies desktopCapture 捕获屏幕、个人窗口或标签内容...}); 扩展调试 chrome的菜单里打开扩展程序(打开开发者模式) ? 调试通普通页面一样 如何优雅的调试 右键Chrome工具栏的小图标会弹出一个窗口,选择审查弹出内容即可调试。...Mac OS X 上为 chrome) --pack-extension 指定扩展程序所在文件夹的位置 --pack-extension-key 指定扩展程序私有密钥文件的位置 压缩包 windows:...": "en", //描述插件是干啥的, //描述需要适合在 chrome web store 上显示 "description": "A plain text description", //图标可以是
对应的17个类的使用、MFC的列表框CListBox、树控件CTreeCtrl、CListCtrl等控件、多线程的使用等。...这样就将菜单和对话框关联起来了。 方法2:直接通过代码加载菜单 在的对话框类的OnInitDialog()函数中加这么几行代码就搞定了。 ...//加载菜单 CMenu menu; menu.LoadMenu(IDR_MENU1); SetMenu(&menu); 4、MFC中各种指针的获取 VC中编程对于刚刚开始学习的同学...其实这些内容基本上是每本VC学习工具书上必讲的内容,而且通过MSDN很多问题都能解决。...再推荐几个IT网站吧,我经常逛的。 CSDN:这个就不用我多说了吧。传说中最大的IT中文社区,资源和文章都不错,就是代码质量上可能差了点。
每每涉及到处理异类容器和根基类层次(如 MFC)时,不可避免要对对象类型进行动态判断,也就是动态类型的侦测。如何确定对象的动态类型呢?... pfile = new DiskFile; // 动态类型是 DiskFile 假设你正在开发一个基于图形用户界面(GUI)的文件管理器,每个文件都可以以图标方式显示。...当鼠标移到图标上并单击右键时,文件管理器打开一个菜单,每个文件除了共同的菜单项,不同的文件类型还有不同的菜单项。如:共同的菜单项有“打开”“拷贝”、和“粘贴”,此外,还有一些针对特殊文件的专门操作。...比如,文本文件会有“编辑”操作,而多媒体文件则会有“播放”菜单。 为了使用 RTTI 来动态定制菜单,文件管理器必须侦测每个文件的动态类型。...但 LocalizeMedia 本质上还是个 MediaFile 类型的文件。因此,当用户在该类文件图标上单击右键时,文件管理器必须提供一个“播放”菜单。
tkinter 有三种布局管理方式: pack() grid() place() pack() pack() 是最常用的布局,不需要指定具体位置,当然也可以通过指定位置,边距来实现复杂的布局。...、颜色、字体等信息,但实际上对于大多数的控件,你都可以自定义这些属性。...添加菜单栏 菜单功能同样是比较常见的,我们可以在各种软件上发现菜单。...下面的例子中,我们在前面的基础上为 File 菜单项中的 new 按钮添加了事件函数 onClickNew(),它会创建一个子窗口 sub_window,注意此时创建出来的窗口必须是 Toplevel...的参数: # 打包exe pyinstaller -F py_word.py # 不带控制台的打包 pyinstaller -F -w py_word.py # 打包指定exe图标打包 pyinstaller
领取专属 10元无门槛券
手把手带您无忧上云