1. 创建对话框类 (1)打开VC++6.0环境,点击:文件→新建: (2)在弹出的新建对话框中选择:工程→MFC AppWizard (exe)→输入工程名称(例如:功能调试)→工程保存路径名→确定(其他勾选项一律默认): (3)在弹出的MFC AppWizard- Step1对话框中选择:(你喜爱创建的应用程序类型?)点击基本对话框→(使用语言?)选择中文→点击下一个: (4)在弹出的MFC AppWizard- Step2 of 4对话框中选择:这里基本保持默认选择,比较有用的一项是输入标…
4. 菜单 4.1 弹出菜单 本节主要讲解如何在主对话框的指定区域内通过鼠标右击来弹出一个菜单选项.最终效果图如图4.1. 如图4.1鼠标只能在指定区域(图中深色区域)内右击时弹出菜单,在指定区域外点击时不执行创建菜单操作.具体操作步骤如下: (1) 首先在指定区域响应鼠标右击消息,需要在主对话框类中添加消息句柄WM_RBUTTONUP,并在该消息响应函数void CFDlg::OnRButtonUp(UINT nFlags, CPoint point)中进行坐标判断,示例代码如下: void…
3. 绘图 3.1 对话框资源编辑 首先通过添加控件的方式来创建一个简单的绘图对话框如图所示,创建步骤为: 第一.在VC++6.0软件环境的灰色空白区域右击,选中Controls,然后会弹出一个控件对话框: 第二.点击需要的控件,鼠标箭头类型就会变成十字形,然后在主对话框里通过点击.拖拽绘制出需要的控件,这里也可以通过鼠标调整控件大小直到满意为止. 第三.在主对话框里右击打开属性对话框(一般情况下可以点击属性对话框左上角的形如大头针样式的小按钮来锁定属性对话框,解锁也是点击同样的按钮,只是按钮样…
3.3.2 创建图形画刷来实现位图加载 1.首先在Resource View中导入一幅位图,位图大小96×96像素: 2.其次在主对话框中添加一个静态文本资源,ID号是IDC_BITMAPAREA,添加一个按钮资源,ID号是IDB_LOADBITMAP: 3.然后编辑按钮(IDB_LOADBITMAP)的消息关联函数,如图3.6: 此处需要注意一点是:如图3.5在默认情况下,设定的位图大小为96×96像素,而在编辑位图显示区域时,也就是图3.5中标记出来的静态文本区域,其属性大小显示是64×64…
3.3.4 借助兼容DC加载DIB位图 创建一个与设备环境相兼容的DC,通过将位图暂时导入至兼容DC,然后利用CDC::BitBlt 或者CDC::StretchBlt函数将位图绘制到设备环境中. 示例代码如下: void CFDlg::OnLoadbitmap() { // TODO: Add your control notification handler code here HBITMAP hbitmap; BITMAP bitmapinfo; CBitmap cbitmap; RECT…
////////////////////////////////////////////////////////////////////////////////////                     /********* 文章系列:MFC技术内幕系列***********/                     /************MFC技术内幕系列之(四)***********/                     /*****文章题目:MFC消息映射与消息传递内幕***…
创建好对话框资源后要做的就是生成对话框类了.生成对话框类主要包括新建对话框类.添加控件变量和控件的消息处理函数. 例程Addition是基于对话框的程序,所以程序自动创建了对话框模板IDD_ADDITION_DIALOG,并自动生成了对话框类CAdditionDlg,它是从CDialogEx派生的.大家用过VC++6.0的可能记得,我们定义的对话框类是从CDialog类派生的,但在VS2010中,一般对话框类都是继承自CDialogEx类.一.创建对话框类  如果是自己新添加的对话框模板,怎样为…
弄了好久,今天终于把在VC中的对话框类之间传递参数的问题解决了,很开心,记录如下: 1. 我所建立的工程是一个基于MFC对话框的应用程序,一共有三个对话框,第一个对话框为主对话框,所对应的类为CTMDDDlg类.在主对话框上我放置了一个标签页(Tab Control)控件,其实现的功能是当单击标签提示A时进入页面A,即对话框A(所对应的类为CDialogChild1),单击B时进入对话框B(CDialogChild2). 整个工程的框架已经设计好了,在对话框A和对话框B上放置了许多控件,现在我想…
原文网址:http://www.jizhuomi.com/software/153.html 前两讲中鸡啄米为大家讲解了如何创建对话框资源.创建好对话框资源后要做的就是生成对话框类了.鸡啄米再声明下,生成对话框类主要包括新建对话框类.添加控件变量和控件的消息处理函数等. 因为鸡啄米给大家的例程Addition是基于对话框的程序,所以程序自动创建了对话框模板IDD_ADDITION_DIALOG,并自动生成了对话框类CAdditionDlg,它是从CDialogEx类派生的.大家用过VC++6.0…
创建对话框类和添加控件变量 前两讲中讲解了如何创建对话框资源.创建好对话框资源后要做的就是生成对话框类了.生成对话框类主要包括新建对话框类.添加控件变量和控件的消息处理函数等. 例程Addition是基于对话框的程序,所以程序自动创建了对话框模板IDD_ADDITION_DIALOG,并自动生成了对话框类CAdditionDlg,它是从CDialogEx类派生的.大家用过VC++ 6.0的可能记得,我们定义的对话框类都是从CDialog类派生的,但在VS2010中,一般对话框类都是继承自CDia…
CSDN的博客编辑器实在是难用……转战博客园 直接把CSDN发的搬过来了 ————————————————————————————我是分割线———————————————————————————— 第一次发博客好紧张啊,这里的大神都牛逼哄哄的只有我是装逼的我会不会被打啊 先上妮可镇帖 我最近在写一个MFC项目(基于对话框)时发现只要使用了CFileDialog,窗体上的Menu就会变成灰色,但是可以点击,如下图所示. 忘了说,我的环境是Win8.1 + VS2013,弹出CFileDialog的…
前两讲中鸡啄米为大家讲解了如何创建对话框资源.创建好对话框资源后要做的就是生成对话框类了.鸡啄米再声明下,生成对话框类主要包括新建对话框类.添加控件变量和控件的消息处理函数等. 因为鸡啄米给大家的例程Addition是基于对话框的程序,所以程序自动创建了对话框模板IDD_ADDITION_DIALOG,并自动生成了对话框类CAdditionDlg,它是从CDialogEx类派生的.大家用过VC++ 6.0的可能记得,我们定义的对话框类都是从CDialog类派生的,但在VS2010中,一般对话框类…
转载http://hi.baidu.com/jackywdx/item/feee8041d2c2e12310ee1e85 Windows应用程序通常是通过对话框接收用户输入.向用户输出信息,本节介绍应用程序中对话框的创建和应用,首先介绍对话框的工作方式.种类及创建方法,然后介绍如何将对话框与程序联系在一起. 3.4.1 对话框的工作方式.种类和创建方法 1. 对话框在应用程序中的工作方式 前已述及,文档类是应用程序存储数据的地方,而对话框是用户与应用程序之间信息交互的桥梁,那么,文档数据是怎样传…
线程的函数中调用MFC对话框类的变量多线程传输文件的对话框 现在想要在对话框上添加一个进度条 为进度条映射变量m_progress这就需要在传输一段文件后就更新m_progress的值使进度条前进 也就是需要在线程函数SendThread(int idx)函数中用到m_progress创建线程时将指针作为参数传入AfxBeginThread(SendThread, this, NULL);在线程函数中再强转使用UINT CMainFrame::SendThread(LPVOID pParam){…
MFC里有个app类..他是一个项目工程类,有一个全局的实例化.theApp你可以理解为整个项目的实例,它重载了入口函数,所有的窗口神马的,都是在这个类里实例化的. dlg是对话框,是一个窗口.一个程序(app)可能没有窗口,也可能很多窗口,取决于你怎么设计.窗口本质上是一样的,但外观上你可以分成一般窗口和对话框. 两个类的作用完全不同,app类相当于相当于程序初始化,建立消息循环,窗口类实现窗口的功能每一个程序都必须有一个并且只有一个app类,但是程序不一定要要窗口类!!! 一个是从CW'i'…
当前位置 : 首页 » 文章分类 :  开发  »  MFC中文件对话框类CFileDialog详解及文件过滤器说明 上一篇 利用OpenCV从摄像头获得图像的坐标原点是在左下角 下一篇 Word中为图表生成目录 域名迁移公告 2017年12月20日起,本博客迁移到新域名madaimeng.com,旧域名masikkk.com不再更新内容,但将永久保持可访问! 阅读 大专栏  MFC中文件对话框类CFileDialog详解及文件过滤器说明busuanzi_value_page_pv"> 评…
从类的角度区分: 基于对话框(3个类): CAboutDlg 程序名App 程序名Dlg 单文档(5个类): CAboutDlg CMainFrame 程序名App 程序名Doc 程序名View 多文档(6个类): CAboutDlg CMainFrame 程序名App 程序名Doc 程序名View CChildFrame ------------------------------------------------------------------------------- 多文档 CAb…
上篇文章分析了一个封装DirectShow各种接口的封装类(CDXGraph):一个简单的基于 DirectShow 的播放器  1(封装类) 本文继续上篇文章,分析一下调用这个封装类(CDXGraph)的对话框类(CSimplePlayerDlg),看看在MFC中如何使用这个类(CDXGraph). 首先来看看CSimplePlayerDlg这个类的定义,瞧瞧SimplePlayerDlg.h这个头文件. /* 雷霄骅 * 中国传媒大学/数字电视技术 * leixiaohua1020@126.…
浏览器插件之ActiveX开发(一) 一般的Web应用对于浏览器插件能不使用的建议尽量不使用,因为其涉及到安全问题以及影响用户安装(或自动下载注册安装)体验问题.在有特殊需求(如涉及数据安全的金融业务数据交互.需插件才能实现的与本地设备的交互等)的情况下可以酌情慎用. 浏览器插件总体可以划分为两大阵营,即IE支持的插件以及非IE支持的插件.本来在Netscape时代,对于浏览器插件是有公用的规范的(NPAPI),一开始所有浏览器都支持该规范,包括IE.后来出于商业原因,微软的IE不再支持NPAP…
作者:韦易笑链接:https://www.zhihu.com/question/29636221/answer/45102191来源:知乎著作权归作者所有,转载请联系作者获得授权. 更新:擦,本来只有一句话,推荐Qt,远离微软,有人追问,补充了点,有人又追问,又补充了点,然后出了趟门回来,感觉跟捅了马蜂窝一样.既然都说到微软了,那就接着展开一下. 问题的本源 微软就是战线太长了,忙着去主导各种标准,制订各种框架,这样的话,才能更好的夹带私货,用一个你必须用的东西推进另外一个他想让你用的东西,诸如…
三. MFC篇 Windows API是面向过程的接口,因此对于当时的编程技术来说,它是完美无缺的.但是,随着人们逐渐使用C++进行Windows程序的开发,迫切需要建立与Windows API的面向对象包装的接口.1992年,微软将Windows API开发成为它的应用程序框架(AFX),后来该产品又演变成为目前的微软基础类库(MFC)产品.下图2展示了MFC的顶级类层次结构. 图2.MFC的类层次结构. MFC为使用C++开发Windows GUI应用程序提供了一个十分全面的基础框架,它对以…
本节开始为大家讲解偏向应用的知识--创建对话框.  对话框,大家应该很熟悉了,在我们常用的软件中大多都有对话框界面,例如,360安全卫士的主界面其实就是对话框,知识它做了很多美工方面的工作,将其大大美化了.  创建对话框主要分为两大步:  第一,创建对话框资源,主要包括创建新的对话框模板.设置对话框属性和为对话框添加各种控件:  第二,生成对话框类,主要包括新建对话框类.添加控件变量和控件的消息处理函数等. 一.创建对话框的应用程序框架  之前创建的HelloWorld程序是单文档应用程序,生成…
   对于许多初学者来说,网络通信程序的开发,普遍的一个现象就是觉得难以入手.许多概念,诸如:同步(Sync)/异步(Async),阻塞(Block)/非阻塞(Unblock)等,初学者往往迷惑不清,只知其所以而不知起所以然. 异步方式指的是发送方不等接收方响应,便接着发下个数据包的通信方式:而同步指发送方发出数据后,等收到接收方发回的响应,才发下一个数据包的通信方式. 阻塞套接字是指执行此套接字的网络调用时,直到成功才返回,否则一直阻塞在此网络调用上,比如调用recv()函数读取网络缓冲区中的…
本文是在“Beginning SDL 2.0(4) YUV加载及渲染”(以下简称BS4)基础上做的功能完善,如果你对之间介绍的内容了解不多,麻烦先阅读之前的内容. 本文主要介绍如何完成一个基于MFC和SDL 2.0的YUV播放器,基本思路是使用Windows的WM_TIMER消息,定期刷新画面.(正规的播放器通常使用一个独立的线程用于做固定帧率的刷新,这里为了简单期间使用系统提供的定时器实现.) 工程创建 使用vs10创建mfc基于对话框的工程,2_sdl_yuv_player,配置好SDL包含…
鸡啄米在上一讲中介绍了MFC的消息映射机制,属于原理方面的知识.对于VC++编程入门学习者来说可能有些抽象,鸡啄米会把消息映射的知识渗透到后面的教程中.本节开始为大家讲解偏应用的知识-创建对话框. 对话框,大家应该很熟悉了,在我们常用的软件中大多都有对话框界面,例如,360安全卫士的主界面其实就是个对话框,只是它做了很多美工方面的工作,将其大大美化了. 创建对话框主要分两大步,第一,创建对话框资源,主要包括创建新的对话框模板.设置对话框属性和为对话框添加各种控件:第二,生成对话框类,主要包括新建…
原文:http://blog.csdn.net/yhhyhhyhhyhh/article/details/51286926 原文中有问题部分已修改. c#调用c++制作的基于mfc的ocx控件     做了一个小测试,c#调用c++的ocx控件.开发环境:win7,vs2010.基本分以下四个步骤.    ocx控件上显示系统时间,最终c#加载c++的ocx控件跟普通的控件一样.     代码下载:c#调用c++制作的基于mfc的ocx控件       1.利用c++制作ocx控件. ocx控件…
http://blog.csdn.net/sybifei/article/details/45008745 [这篇文章有问题, 仅供参考] http://blog.csdn.net/define_us/article/details/50114127 [这篇文章C#调用可以,但VC调用存在问题,仅供参考] Step by Step: 基于MFC下的COM组件开发-Helloworld 原创 2015年04月12日 11:48:03 标签: mfc / com组件 / activex / hell…
|   版权声明:本文为博主原创文章,未经博主允许不得转载. 下面我们试试一下,按下退出Button退出播放器的功能: 首先,我们双击退出Button按钮,就会弹出下图的框: 上面的弄好之后我们就实现退出函数的功能: 这个代码写好之后,我们可以运行一下,在单击退出按钮,可以发现,按下之后我 们的播放器自动退出 下面我们在实现打开文件的功能,这个功能比较复杂,第一步我们首先双击打开文件按钮,在CPandaPlayerDlg.cpp中创建函 数OnOpenfile():创建过程同上. 可以看到函数:…
在网上折腾了一阵子,终于把这个程序写好了,程序是基于MFC的,图像显示的部分和获取图像的像素点是用到了opencv的一些函数,不过FFT算法没有用opencv的(呵呵,老师不让),网上的二维的FFT程序一般都是把图像分别进行行变换后进行列变换的,在编程过程中遇到了一些问题,是这样的,FFT算法算完后得到的复数矩阵怎么imshow?问题就出现在这,我原来的程序因为归一化到0-255时,程序运行特别慢(用了个CArray,找出array里的最大值和最小值,然后(每一个复数矩阵求模后-最小值)/(最大…
MFC中对话框有两种形式,一个是模态对话框(model dialog box),一个是非模态对话框(modeless dialog box). 一.模态对话框(model dialog box) 在程序运行的过程中,若出现了模态对话框,那么主窗口将无法发送消息,直到模态对话框退出才可以发送. 点击模态对话框中的OK按钮,模态对话框会被销毁. 创建一个模态对话框的代码: //创建一个模态对话框 CTestDialog td; td.DoModal(); //创建一个模态对话框 CTestDialo…