MFC中界面自适应】的更多相关文章

void CMyDlg::OnSize(UINT nType, int cx, int cy){ CDialogEx::OnSize(nType, cx, cy); CRect rt; GetClientRect(&rt); if (m_Grid.GetSafeHwnd() != NULL) { m_Grid.MoveWindow(rt.top, rt.left, rt.Width(), 100, TRUE); }}…
一.准备工作 第一步:下载并安装Adobe Flash Player. 从官方网站(http://get.adobe.com/cn/flashplayer/)上下载最新的Flash Player(大约为2.66M),并安装.对于Windows 32位系统,其默认安装目录为:C:\WINDOWS\system32\Macromed\Flash\:对于64位系统,为:C:\Windows\SysWOW64\Macromed\Flash. Flash控件的大版本号用数字表示,如9,10,11等,小版本…
转载http://hi.baidu.com/jackywdx/item/feee8041d2c2e12310ee1e85 Windows应用程序通常是通过对话框接收用户输入.向用户输出信息,本节介绍应用程序中对话框的创建和应用,首先介绍对话框的工作方式.种类及创建方法,然后介绍如何将对话框与程序联系在一起. 3.4.1 对话框的工作方式.种类和创建方法 1. 对话框在应用程序中的工作方式 前已述及,文档类是应用程序存储数据的地方,而对话框是用户与应用程序之间信息交互的桥梁,那么,文档数据是怎样传…
转自:http://blog.csdn.net/eddy_liu/article/details/8474677 目前,用MFC设计的Windows应用程序几乎都采用文档/视图结构.这种程序框架与简单程序框架之间的重要区别就在于形成应用程序的主窗口不只需要一个类的对象,而是需要3个对象: 框架窗口类(CFrameWnd)对象 视图类(CView)对象 文档类(CDocument)对象 框架窗口类(CFrameWnd)对象作为窗口的框架,视图类(CView)的对象作为贴附在框架窗口上的用户区,二者…
转载链接:http://wiki.opencv.org.cn/index.php/MFC%E4%B8%AD%E5%BF%AB%E9%80%9F%E5%BA%94%E7%94%A8OpenCV 简介和缘起 本教程原始讨论主题,请见 [原创]MFC中快速应用OpenCV教程,制作此教程的目的,就是为了方便广大windows下面使用MFC的用户可以轻松的在MFC窗口View类中,实现OpenCV格式图片的显示.   介绍基本的openCV和MFC的操作   在MFC中如何应用菜单,和Canny算子的实…
下载源代码 五.MFC对多线程编程的支持 MFC中有两类线程,分别称之为工作者线程和用户界面线程.二者的主要区别在于工作者线程没有消息循环,而用户界面线程有自己的消息队列和消息循环. 工作者线程没有消息机制,通常用来执行后台计算和维护任务,如冗长的计算过程,打印机的后台打印等.用户界面线程一般用于处理独立于其他线程执行之外的用户输入,响应用户及系统所产生的事件和消息等.但对于Win32的API编程而言,这两种线程是没有区别的,它们都只需线程的启动地址即可启动线程来执行任务. 在MFC中,一般用全…
近期须要实验室须要将在无人机地面站中嵌入地图,在网上找了非常多资料,最终有些眉目了, 首先.做这个须要用到的知识有.MFC控件.MFC类库.JavaScript脚本语言.Google API.Google离线地图:因为google离线地图不怎么会.首先从google在线地图開始. 以下总结一下这几天搞google地图的步骤.有附图,对MFC和JS脚本语言不懂的同学实用. 在线Google 地图步骤: (1).建立基于对话框的MFCproject. 因为我对MFC基本不了解,所以从网上下载了个样例…
由于入门教程的反响还不错,因此Alberl就以直播的形式来写<进阶教程>啦,本教程的前提: 1.请先阅读<仿迅雷播放器教程> 2.要有一定的duilib基础,如果还没,请先阅读<2013 duilib入门简明教程>. 3.下载基于VLC的MFC播放器(包含VLC等所有文件),csdn不允许上传相似的代码,因此后面的教程将不再上传VLC的dll.头文件等没有改变的文件. <仿迅雷播放器教程 -- 基于VLC的MFC播放器 (6)>中界面是用MFC做的,因此我们…
Window消息可以分为三类:(1)标准Window消息(CWnd子类处理),(2)控制通知消息(CWnd子类处理),(3)命令消息(应用中的5类都可以).所有派生自CCmdObjec对象的类都可以处理Windows消息. (1)前缀以“WM_  ”开头,但是WM_COMMAND消息除外.如窗口重回WM_PAINT,WM_QUIT (2)WM_COMMAND消息,窗口上的各种空间发出的消息 (3)WM_COMMAND消息,只是指控制界面发出的消息,如菜单项与工具栏的按钮操作.MFC为“标准菜单”…
这篇技术文章不是讨论经典的MFC中的消息工作机理的,讨论消息工作原理.方式和路径的文章在网上和书本中随处可见.网上众多的讨论都是关于如何响应并进行用户自定义消息映射的:网上还有一些文章介绍如何在自定义类中响应Windows消息,在本文中都简略叙述.但是,网上大部分的文章没用透彻阐述如何在用户自定义类中响应自定义消息这一通用方法. 问题定义如下:用户自定义一个类,这个类不一定要有界面(完全可以是不可视的),要求自定义的类可以响应某个自定义消息. 首先能够响应消息的类必须都从CCmdTarget类中…
分割窗口概述 分割窗口,顾名思义,就是将一个窗口分割成多个窗格,在每个窗格中都包含有视图,或者是同一类型的视图,或者是不同类型的视图. MFC分割窗口的方式有两种,动态分割和静态分割. 动态分割窗口通常用于创建同一个文档对应的多个视图,而且这些视图一般都是同一类型的视图,能够在用户编辑文档的不同部分时提供方便. 大家看下Word里的动态分割窗口就很明白了,以Word 2007文档为例,在菜单中点击“视图”->“拆分”,就可以看到一条随鼠标移动的分隔条,当我们在文档中某个位置按下鼠标左键时,分割条…
在MFC中可以创建多种类型的窗口程序,如对话框程序.单文档结构程序(非文档/视图结构).单文档(文档/视图结构)以及多文档视图结构程序等. 在编写一般的小工具时,我们的首选显然是对话框程序,不过基于对话框的程序不支持视图类,有些功能实现起来会麻烦许多.此时我们可以使用CFormView作为基类来创建单文档(非文档/视图结构)和单文档(文档/视图结构)的程序. 一.使用MFC向导创建程序 (1)单文档(文档/视图结构) (2)不需要状态栏和工具栏 (3)使用CFormView作为基类 (4)使用向…
1.概论 运行时库是程序在运行时所需要的库文件,通常运行时库是以LIB或DLL形式提供的.C运行时库诞生于20世纪70年代,当时的程序世界还很单纯,应用程序都是单线程的,多任务或多线程机制在此时还属于新观念.所以这个时期的C运行时库都是单线程的. 随着操作系统多线程技术的发展,最初的C运行时库无法满足程序的需求,出现了严重的问题.C运行时库使用了多个全局变量(例如errno)和静态变量,这可能在多线程程序中引起冲突.假设两个线程都同时设置errno,其结果是后设置的errno会将先前的覆盖,用户…
虽然MFC已经落伍好多年,而且用来做界面非常的不好用...但是我既不会C#也不会QT,又需要使用OpenGL,就只能将就用了...   一.首先介绍Windows图像程序设计中几个重要的概念:   GDI(Graphics Device Interface,图形设备接口):这是Windows API的一个库.当Windows应用程序需要显示点.线.图像.文字等内容,在显示器或打印输入这些内容时,就需要用到GDI.Windows应用程序不能直接操作系统的硬件(比如显卡),GDI就为应用程序提供了相…
出自http://my.oschina.net/ypimgt/blog/62573 一.准备工作 第一步:下载并安装Adobe Flash Player. 从官方网站(http://get.adobe.com/cn/flashplayer/)上下载最新的Flash Player(大约为2.66M),并安装.对于Windows 32位系统,其默认安装目录为:C:\WINDOWS\system32\Macromed\Flash\:对于64位系统,为:C:\Windows\SysWOW64\Macro…
MFC中窗口启动后,CEdit编辑框默认光标位设置,顺序的调节方法 在编辑界面按下ctrl+D键,就会出现所有控件的Tab键顺序,按照自己想要的顺序依次点击控件,就可以重新安排顺序.数值1就是默认停留的光标位置.如果想把光标默认停留在2,则,先点数值1,然后点2,两个数值就交换位置了.————————————————版权声明:本文为CSDN博主「txwtech」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明.原文链接:https://blog.csdn.ne…
本周的聊技术话题和大家说说如何在Android中实现自适应文本大小显示. 想象一下,在布局中,通常显示文本的区域大小是固定的,但是文本长度并不总是固定的.比如列表中的文章标题.界面下方的按钮文本等等. 为了尽可能让这些文字可见,传统的做法是通过文本长度设置文本大小,或者通过android:ellipsize属性设置文本省略方式等等. 实际上,从Android O开始,Android API引入了自适应文本大小的简易实现.它不仅可以用于TextView,对于Button等具有文本显示的控件同样适用…
创建MFC图形界面dll 概述: 利用MFC的DLL框架,制作带有图形界面的dll,可以实现很多功能. 流程: 选择静态链接MFC DLL:以免有的库没有. 采用该框架创建的MFC,会自动生产一个MFC应用程序实例,但是我们还要添加一个图形界面,不然为啥不直接用DLL,而用MFC的DLL呢. 添加对话框: 右键项目,然后添加对话框资源: 右键该对话框给其添加一个类,不然的话只是一个界面,没有真正的引用它. 输入类名会自动生成相关文件: 注:这里如果添加类时,采用的是CDialogEx作为基类,需…
在mfc中编辑框允许输入多行时,换行符被表示为<归位><换行>即"\r\n",用ascii码表示为13 10 如果为编辑框中想要输入换行,就请将编辑框的属性: Auto HScroll 设置为 False MultiLine  设置为 True Want Return 设置为 True…
转载自:xntop的<区别MFC中的CClientDC.CWindowDC.CPaintDC.CMetaFileDC> CClientDC及其子类 1. CClientDC类只能在客户区绘图:2. 所谓客户区指窗口区域中去掉边框.标题栏.菜单栏.工具栏.状态栏等之外的部分,它是用户可以操作的区域:3. 在使用CClientDC进行绘图时,一般要调用GetClientRect()函数来获取客户区域的大小:4. CClientDC类在构造函数中调用Windows API函数GetDC(),在析构时…
在上一篇中介绍了几个写入注册表数据和读取注册表数据的接口,并介绍了使用方法. 这一片教你如何使得你的应用程序在下次打开时保持上一次关闭前的状态. 在上一篇添加的代码的基础上,要添加WM_CLOSE消息的响应函数,因为我们只有在窗口关闭前要保存窗口的位置信息,所以保存窗口位置到注册表的代码要写在这个消息处理函数. 代码如下: void CTestClassDlg::OnClose() { )) { //保存窗口的位置 WINDOWPLACEMENT wp; GetWindowPlacement(&…
在上一篇文章"MFC中使用Duilib--1"中, 没有用到资源文件,即xml,本篇讲怎样加载文件. 1.  在exe输出目录下,创建一个skin目录,里面放入需要用到的图片文件,以及创建一个或几个xml文件,在这里,我创建一个skin.xml文件.内容如下: [html] view plaincopy <?xml version="1.0" encoding="UTF-8"?> <Window mininfo="20…
1.用处 在多个类之间传递消息.当需要响应用户操作,本类却无法实现时,可以向系统发出消息.然后让系统中的需要的位置实现它. 2.方法 2.1定义这个消息,并让拥有者发送这个这个消息,传递一个整型参数 这里才需要发送消息的地方(实现文件,cpp文件中) 添加以下代码: //--让父窗口去更改值 ); GetOwner()->SendMessage(WM_CHANGED,,nrow); 2.2 这里的 WM_CHANGED 需要用户自己定义值, MFC中给用户自定义消息预留了消息字段 . 在(声明文…
互斥(Mutex)是一种用途非常广泛的内核对象.能够保证多个线程对同一共享资源的互斥访问.同临界区有些类似,只有拥有互斥对象的线程才具有访问资源的权限,由于互斥对象只有一个,因此就决定了任何情况下此共享资源都不会同时被多个线程所访问.当前占据资源的线程在任务处理完后应将拥有的互斥对象交出,以便其他线程在获得后得以访问资源.与其他几种内核对象不同,互斥对象在操作系统中拥有特殊代码,并由操作系统来管理,操作系统甚至还允许其进行一些其他内核对象所不能进行的非常规操作. 只有拥有互斥对象并得以进入到共享…
TeeChart作为一款强大好用的绘图控件,通过它可以绘制出各式各样的图表,包括2D的,还有3D的,绘制的图表美观实用,这里主要讲述如何在VS2013/MFC中使用TeeChart控件,顺便说一下在VS2013中如何创建MFC项目. 工具/原料 Visual studio 2013 TeeChart.pro.v5.ActiveX 方法/步骤 1 在网上下载TeeChart控件并安装,安装自然不用多说,安装完后找到安装路径(带有TeeChart5.ocx文件),复制当前路径 2 安装完后需要对控件…
由于视类窗口始终覆盖在框架类窗口之上,因此所有操作,包括鼠标单击.鼠标移动等操作都只能由视类窗口捕获.一个MFC消息响应函数在程序中有三处相关信息:函数原型.函数实现和以及用来关联消息和消息响应函数的宏. (1)在消息响应函数的原型代码中,函数声明的前部有一个afx_msg限定符,也是一个宏,该宏表明这个函数是一个消息响应函数的声明. (2)消息映射宏:在视图类的源文件中,BEGIN_MESSAGE_MAP()和 END_MASSAGE_MAP()这两个宏之间定义了消息映射表,例如对于画线,其中…
在MFC中设置控件的背景色.字体.字体颜色.标题等属性主要是利用OnCtlColor函数来实现. 如: HBRUSH CAlarm::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor)  { HBRUSH hbr = CDialog::OnCtlColor(pDC, pWnd, nCtlColor); // TODO: Change any attributes of the DC here //设置静态控件的背景色和文本颜色 if (pWnd->G…
原文:MFC中状态栏显示鼠标坐标位置,蝈蝈 1,利用MFC向导创建一个应用工程ewq. 2,打开ResourceView,右击Menu菜单,插入Menu,在空白处双击,Caption中填入Point. 3,为Point设置下拉菜单,ID为ID_INDICATOR_POINT:Caption为point:Prompt为X:XXXX,Y:YYYY. 4,打开MainFrm.cpp,在indicators数组中的第二个位置添加ID_INDICATOR_POINT. 5,将MainFrm中的成员变量m_…
MFC中listbox控件是为了显示一系列的文本,每个文本占一行.   Listbox控件可以设置属性为: LBS_CHILD   :(默认)子窗口 LBS_Visible :(默认)可视 LBS_Multiplesel :可选择多行 LBS_Extendedsel :可以使用shift或ctrl选择多行 LBS_SORT:所有行按字母顺序进行排序   对Listbox进行操作: Int listbox.AddString (  LPCTSTR     Str)   :对listbox的首行添加…
/* * ===================================================================================== * * Filename: a-kind-of-showDlg.cpp * * Description: 不使用CvvImage类来在MFC中显示图像 * * * Version: 1.0 * Created: 2013/11/16 22:06:13 * Author: yuliyang * * Mail: wzyu…