之前一直在找有木有好点的方法.现在终于被我找到,收藏之~~~~~~ 在使用mfc的时候经常遇到自定义类访问主对话框控件的问题,例如自定义类中的方法要输出一段字符串到主对话框的EDIT控件.控制对话框的进度条等. 要在自定义的类中访问主对话框空间,须获得主对话的指针.主对话框的对象在app类的InitInstance()方法中声明.查看app类的cpp文件,在InitInstance()方法中有如下语句: CAppDlg dlg;    m_pMainWnd = &dlg;   主对话框指针被传给…
首先我们把题目所示的要求分为两个问题: 问题一:如何给基于MFC的单文档视图类里面添加 控件.就是那种类似工具箱里面的控件. 问题二:如何给已经添加的控件 定义一些消息的响应函数. ×××××××××××××××××××××××××××××××××××××××××××××× 前言: 如果是给对话框添加一个控件 ,然后给这个控件添加消息响应函数是非常简单.IDE有一整套向导可以帮助我们干这个事情. 但是如果是直接给视图类添加控件 似乎就比较困难了. 但是很多牛X的人看到框架类可以像一个箩筐丝的把…
Delphi没有MouseEnter与MouseLeave的事件,网上说可以响应CM_MOUSEENTER和CM_MOUSELEAVE消息来实现.这两个消息是VCL自己定义的消息,看了Delphi的Controls.pas果然看到有以下两行: CM_MOUSEENTER             = CM_BASE + 19;  CM_MOUSELEAVE             = CM_BASE + 20; 其中CM_BASE = $B000 可以有两种方式来利用: 方式一:在自定义的控件中添…
在MFC的很多程序中,常常需要在回调函数中调用MFC类的类成员变量.类成员函数,亦或者对话框控件的句柄.由于回调函数是基于C编程的Windows SDK的技术,而类成员又有this指针客观条件限制...所以在回调函数中不能够直接访问类成员,或者操纵控制MFC对话框的控件. 虽然可以把回调函数设为类的静态成员函数,以便消除this指针的限制,但诸多不便(比如只能访问静态成员等)仍让人不能够顺畅访问类成员. 而下面这种方法便无需把回调函数设为类的静态成员,也能够顺利的访问类的成员和对话框控件. 1.…
列表控件ListBox关联的MFC中的类:CListBox ######################################################## 1.在列表的结尾添加一项:AddString 2.在列表的指定位置添加一项:InsertString 3.获取列表中项的个数:GetCount 4.获取某项的文本:GetText 5.在单选列表控件中,获取与设置当前选中项:GetCurSel.SetCurSel 6.在列表项中查找指定的字符串:FindString.Find…
高级列表控件ListCtrl关联的MFC中的类:CListCtrl■ 报表样式ListCtrl常用操作:1.添加列标题头:InsertColumn2.获取与设置列宽:GetColumnWidth.SetColumnWidth3.添加一行:InsertItem.SetItemText4.获取与设置单元文本:GetItemText.SetItemText5.允许多行选中时,获取选中的行数:GetSelectedCount6.单行选中时,获取选中的行:GetSelectionMark7.选中某行:Se…
http://bbs.csdn.net/topics/390162519 事实上,本文内容很简单且浅显,所以取消前戏,直接开始.. 源代码:在本文最后 这里是一张动画,演示在多线程(无限循环+Thread.Sleep)情况下主界面操作不受影响. 多线程是一种提高程序运行效率和性能的常用技术.随着我们学习工作的深入,在编程中或多或少会涉及到需要多线程的情况.多数时候,我们的操作模式是后台线程中处理数据,计算结果,然后在前台界面(GUI)中更新显示. 在.NET Framework中,为了保证线程安…
想了解一下VBA中自定义类和事件,以及注册事件处理程序的方法. 折腾了大半天,觉得这样的方式实在称不上“注册”,所以加一个“伪”字.纯粹是瞎试,原理也还没有摸透.先留着,有时间再接着摸. 做以下尝试: 1.建一个自定义类(类模块),类名:Qiqiu 该类提供一个Daqi的方法,每执行一次,x(记录气球的体积)的值+i,如果x的值大于max,则触发自定义的Change事件. 为节省细节不使用属性过程,变量直接用public Public Event Change(q As qiqiu) 'Even…
前面几节为大家演示了加法计算器程序完整的编写过程,本节主要讲对话框上控件的Tab顺序如何调整. 上一讲为"计算"按钮添加了消息处理函数后,加法计算器已经能够进行浮点数的加法运算.但是还有个遗留的小问题,就是对话框控件的Tab顺序问题. 运行加法计算器程序,显示对话框后不进行任何操作,直接按回车,可以看到对话框退出了.这是因为"退出"按钮是Tab顺序为1的控件,也就是第一个接受用户输入的控件.但是,按照我们的输入习惯,应该是被加数的编辑框首先接受用户输入,然后是加数编…
设置对话框控件的Tab顺序 前面几节为大家演示了加法计算器程序完整的编写过程,本节主要讲对话框上控件的Tab顺序如何调整. 上一讲为“计算”按钮添加了消息处理函数后,加法计算器已经能够进行浮点数的加法运算.但是还有个遗留的小问题,就是对话框控件的Tab顺序问题. 运行加法计算器程序,显示对话框后不进行任何操作,直接按回车,可以看到对话框退出了.这是因为“退出”按钮是Tab顺序为1的控件,也就是第一个接受用户输入的控件.但是按照我们的输入习惯,应该是被加数的编辑框首先接受用户输入,然后是加数编辑框…