首页
学习
活动
专区
圈层
工具
发布

MFCC++学习系列之简单记录7——句柄和AFX开头的函数的使用

好事发生文章推荐:从零开始学机器学习——K-Means 聚类文章链接:https://cloud.tencent.com/developer/article/2466716文章简介:本文详细介绍了使用聚类算法中的经典方法...对机器学习感兴趣的同学可以自行学习一下!前言在MFC的使用中发现了句柄,今天来详细学习一下MFC中如何使用句柄吧!句柄的介绍句柄的使用是资源管理和传递的关键机制,通过句柄将系统资源或对象进行传递使用。...菜单句柄(HMENU):用于唯一标识菜单对象。画笔句柄(HPEN):用于引用画笔对象画刷句柄(HBRUSH):用于引用画刷对象图标句柄(HICON):用于引用图标资源。...// 窗口类CreateWindow(xx); //设备上下文句柄HDC hdc = GetDC(hwnd); // 获取窗口的设备上下文句柄//菜单句柄HMENU hMenu = CreateMenu...在MFC中常看到一些以“AFX”开头的函数,是MFC框架提供的全局函数或者宏。这些函数和宏封装了Win32 API,使得C++开发者能够更加方便地编写Windows应用程序。

64100

给VS2008扩展BCGControlBar库

(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

1.2K20
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    MFCC++学习系列之简单记录8——消息映射

    入门——第六讲 菜单编程,对于我这种刚接触VC++ 6.0的新人来说很有帮助,一步步贴图进行教学菜单编程,值得学习!...前言每天学习一点MFC的小知识!消息映射机制说起来很高大上,其实就是前端界面控件和后台代码命名的绑定。当前端控件执行某些操作时,需要把这个事件或消息映射到MFC的成员类上。...ON_WM_QUERYDRAGICON() 映射查询拖动图标的消息到 OnQueryDragIcon 函数。ON_BN_CLICKED与ON_NOTIFY就是我们自己定义的事件处理程序的映射。...这里的按钮映射了一个点击事件,这里的Tab映射了一个选择切换事件。这里要注意类列表的选择,如果Btn控件在Dlg1中的控件选择了Dlg2的类列表,会出现Dlg2中无Btn1控件而报错!...总结本文介绍了MFC的消息映射,并举例说明,同时也与WPF进行了对比。

    59500

    游戏编程之二 windows编程基础

    每个窗口类都建立在一些用户选择的风格、字体、标题字、图标、大小、位置等的基础上。窗口类实际上是定义这些属性的一个模板。   基本上,所有的Windows类定义都使用相同的标准C/C++结构。...22.2 MFC的设计考虑   基础类库设计小组定义了严格的设计规则,在设计MFC库时必须遵循这些规则。...通过仔细的命名和设计可以实现这一点。Microsoft认为这一点是MFC区别于其它类库的一个特征。 MFC小组还把基础类库设计为是允许以混合方式编程的。...现在程序员就可以利用MFC库的好处而不必担心他们的应用程序的代码大小了。 最后,MFC是唯一真正有用的类库。...每个窗口类都建立在一些用户选择的风格、字体、标题字、图标、大小、位置等的基础上。窗口类实际上是定义这些属性的一个模板。   基本上,所有的Windows类定义都使用相同的标准C/C++结构。

    57310

    mfc可视化界面_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:添加了以下新属性 组合框中下拉列表的高度。

    4.7K20

    WINDOWS核心编程--Windows程序内部运行机制

    是一个光标资源 第八个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

    2.3K50

    visual C++ 项目和解决方案的区别

    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定义。

    2K30

    【MFC拓展库】上海道宁与BCGSOFT合作为您带来专业的Micrisoft Windows开发业务组件

    (功能区、可自定义工具栏、菜单等)和一组丰富的专业设计的Microsoft Office和Microsoft Visual Studio类应用程GUI控件,例如图表、日历、网格、编辑器、甘特图等主要产品功能...它不仅仅是一个新控件 - 它是一种新的用户界面理念。功能区控件将传统的工具栏和菜单替换为选项卡式组(类别)。每个选项卡在逻辑上分为面板,每个面板可能包含各种控件和命令按钮。...用户可以简单地在工具栏和菜单之间拖放按钮。“文件”或“编辑”等所有类别都是从应用程序资源自动构建的。自定义机制允许修改工具栏/菜单项的外观,更改项文本/图标,甚至使用库的图像编辑器创建/修改图像。.../粘贴支持拖放支持查找和替换扩展(可定制)撤消/重做支持UNICODE支持CView派生类,可轻松与MFC文档视图体系结构集成。...BCGSuite 包括这些组件以及许多其他专业设计的 GUI 控件。BCGSuite库有100多个经过彻底设计、测试和完整记录的MFC扩展类。

    8.3K20

    VC编程入门浅谈「建议收藏」

    注意,C++是一门语言,而VC则是讲解如何在VC环境下使用MFC类库,学习VC应建立在充分了解C++的基础上的。...学完了C++,最好先找本Win32编程的书,Win32编程是指用Windows API编程,MFC是将众多的API函数进行了封装的类库,用起来方便了不少,但如果没有一些API编程基础,对相关概念不了解,...建议不要等彻底弄明白一句才看下一句,等能做出个菜单、对话框时便回头再看一遍,几遍之后应该就可以大概明白MFC程序的运作了。...等到不看教程便做出这些时,开始逐字逐句的试着理解MFC程序的组织。若看不懂就跳过看下面的。就这样一遍一遍来。如果觉着头大就先歇上2天,等清醒了再接着来,最好在这期间多找些介绍MFC框架的文章。...再过不久,你就可以使用API函数完成一些功能,如在系统托盘加图标,自画列表框等。这时,你也会体会到学习Win32编程的好处了。   最后,建议有时间的话研究一下各种算法。数据结构是一定要看的。

    1.3K10

    游戏编程之三 DirectX SDK简介

    每个窗口类都建立在一些用户选择的风格、字体、标题字、图标、大小、位置等的基础上。窗口类实际上是定义这些属性的一个模板。   基本上,所有的Windows类定义都使用相同的标准C/C++结构。...22.2 MFC的设计考虑   基础类库设计小组定义了严格的设计规则,在设计MFC库时必须遵循这些规则。...活动应用的标题条以不同于非活动应用程序的颜色显示。 控制图标 控制图标是每个窗口左上方的小图片,每个应用程序都使用它。在控制图标上单击鼠标键会使Windows显示系统菜单。...WNDCLASS WinMain()负责注册应用程序的主窗口类。每个窗口类都建立在一些用户选择的风格、字体、标题字、图标、大小、位置等的基础上。...窗口类实际上是定义这些属性的一个模板。   基本上,所有的Windows类定义都使用相同的标准C/C++结构。

    1K00

    【Windows编程】系列第六篇:创建Toolbar与Statusbar

    比如典型的windows应用程序的上面是菜单栏,从菜单栏我们可以选择应用程序提供的各种功能,但是有的功能比较常用,且不能放在第一级菜单,需要进入二级、三级甚至更多的菜单才能选择。...我们这次要一起学习的就是使用纯Windows API函数创建基本的状态栏和菜单栏。如果属性MFC的朋友知道,如果用MFC来做工具栏和菜单栏很简单。...但是使用纯API就麻烦一些了,当然带来的感觉是不一样的,比如要动态创建,使用MFC的资源编辑器就无能为力,但是对于我们今天要使用的API创建方式来说,就显示出他的强大了。...由于工具栏和状态栏都是Windows的通用控件组中的控件,有默认的类名。...程序中创建的Toolbar有三个图标,当程序正常显示,鼠标在某个工具栏按钮上移动,或者处于Disable状态是,会有不同的图片显示,读者可以自己更换其他自己喜欢的图标。

    2.7K41

    MFC子窗口任务栏显示图标和主窗口最小化在系统托盘中显示图标

    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

    4.7K80

    vc6.0在win10或者win11上下载安装和简单使用教程

    编译器能将源代码精准转换为机器码,确保程序高效运行;调试器功能丰富,支持断点设置、单步执行、变量监视等,方便开发者定位和修复代码中的错误;资源编辑器则可轻松创建和编辑Windows资源,如图标、菜单、对话框等...VC6.0对MFC(Microsoft Foundation Classes)库支持良好,MFC封装了大量Windows API,使开发者能以面向对象的方式快速开发Windows应用程序,极大提高了开发效率...它发布时间较早,不支持现代C++标准,对一些新的语言特性和编程范式兼容性不佳。此外,随着操作系统的更新换代,它在较新系统上的兼容性也存在问题,安装和运行过程中可能会出现各种异常。...private: double x,y; //类Point的数据成员 public: Point( ){ }; //类Point的无参数构造函数 Point(double a,double...18.5,10.6); //定义类Point的对象b并初始化 a.Setxy(10.6,18.5); //为对象a的数据成员赋值 a.Display(); //显示对象a的数据成员 b.Display

    4.2K20

    VC++6.0入门——第九讲 定制应用功能程序外观

    Go 语言以其简洁高效的特性,成为了许多开发者的首选。然而,在实际项目中使用加解密时,还是需要在标准库的基础上做一些封装。...在MFC程序中,如果想在窗口创建之后改变其外观,可以在框架类(CMainFrame)的OnCreate函数中添加具体的实现代码。...修改图标,背景,光标在窗口创建前修改方式一:自己写类覆盖原有我们不能修改F℃底层代码,但是,我们可以编写自己的窗口类并注册,然后让随后的窗口按照我们编写的窗口类去创建。...我们已经知道,在MFC SDI应用程序中,有一个表示应用程序本身的类,本例中就是 CStyleApp,它派生于CWinApp类。...工具栏是把常用的菜单命令集合起来,以按钮的形式提供给用户使用,目的是为了方便用户的操作。

    38510

    MFC编程入门之六(对话框:创建对话框模板和修改对话框属性)

    创建对话框主要分为两大步:    第一,创建对话框资源,主要包括创建新的对话框模板、设置对话框属性和为对话框添加各种控件;    第二,生成对话框类,主要包括新建对话框类、添加控件变量和控件的消息处理函数等...的Visual C++下选择MFC,中间窗口中选择MFC Application,然后在下面的Name编辑框中键入工程名称, 本例取名“Addition”,在Location编辑框中设置工程的保存路径...CAboutDlg是应用程序的“关于”对话框类,CAdditionApp是由CWinApp派生的类,CAdditionDlg是主对话框类,主对话框也就是应用 程序运行后显示的主要界面。    ...在Resource View视图中可以看到工程Addition的资源树,展开Addition.rc,下面有四个子项:Dialog(对话框)、Icon(图标)、String Table(字 符串表)和Version...ID是资源的唯一标识,本质上是一个无符号整数,一般ID代表的整数值由系统定义,我们无需干涉。 二、对话框模板    可见对于主对话框来说,创建对话框第一步中的创建新的对话框模板已经由系统自动完成了。

    4.6K10

    Windows SDK编程基本框架

    在Windows平台下,最常见最流行的编程就是MFC编程了,在网上可以搜索出大把的MFC编程相关的文章,今天我们来讨论另外一种windows下的编程模式,即Windows SDK编程。...这种编程具有更加灵活和强大的控制,能实现一些MFC不易实现甚至难以实现的功能。...hIcon:应用程序的图标句柄。 hCursor:应用程序的光标句柄。 hbrBackground:窗口的背景画刷。...lpszMenuName:菜单名,该名以资源的方式存在。 lpszClassName:窗口类的名字,这个必须指定且不能重复,否则会失败,除非你需要重复的,否则尽量避免。...如果获取到的消息为WM_QUIT,则返回0,于是就退出循环。 通过上面的三部曲,我们就创建了windows程序设计的框架,几乎任何的windows程序都可以在这个框架基础上衍生出来。

    2K130

    OCX 入门

    CActiveXDemoCtrl 是控件类,我们要做的控件功能基本上就是要在这个类中实现。...如下图所示,我们可以从类视图清楚的看到我们添加的属性和方法名。 ? 3.事件 ACTIVEX通过事件通知容器控件上发生了某些事情。将控件开发人员的某一特定操作识别为事件。...⑥在相应事件中添加代码以创建并绘制对话框和控件 1)为CMyActiveXCtrl类处理WM_CREATE事件,以初始化对话框对象: 左侧选中CMyActiveXCtrl,右侧属性栏选择”消息”那个小图标...1)调试前,设置编译模式为Release,也就是将工具栏中执行小图标旁的Debug改选为Release。...在工具菜单中,将出现“ActiveX控件测试容器”的菜单项,点击该项,将弹出ActiveX控件测试容器程序(即TstCon32.exe),如下图所示: ?

    4.2K60
    领券