MFC
文章平均质量分 51
tlovet1314
这个作者很懒,什么都没留下…
展开
-
MFC笔记——对话框操作
一,创建对话框 : 无模态对话框:只有这个对话框能接收消息,其它不行。 模态对话框:可以同时和其它对话框一起接收消息。void CMy51_s1View::OnCreateDlg() {//产生无模式对话框 CTestDlg *dlg=new CTestDlg; dlg->Create(IDD_TEST_DLG); dlg->ShowWindow(SW_SHOW原创 2010-04-25 13:48:00 · 571 阅读 · 0 评论 -
CFile和CArchive的使用
这两个类都是对文本文件进行读写操作的,前者可以单独使用,如果配合后者一起使用则更加方便。这里是将他们两一起使用的例子(其中m_strDays和m_updateTime都是CString类型): 首先需要加入头文件:#include 1.写文件 //存入文件 CFile file; if (file.Open(_T("studytime.txt"),CFile::modeCreate|CFile::modeWrite)) { UpdateData(); CArchive ar(&原创 2010-06-11 14:46:00 · 658 阅读 · 0 评论 -
VC获取系统时间、程序运行时间
<br />本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/tanker1024/archive/2009/02/14/3889308.aspx<br /> <br />1.使用CTime类 <br />CString str;<br />//获取系统时间<br />CTime tm;<br />tm=CTime::GetCurrentTime();<br />str=tm.Format("现在时间是%Y年%m月%d日 %X");<br />MessageBox(str,NU转载 2010-06-11 14:47:00 · 438 阅读 · 0 评论 -
VC资源脚本
<br /> 资源脚本,它是一个简单的文本文件,可以手工编辑,也可以让Visual C++自动编辑,或者你用其它的自动编辑器编辑。无论如何,资源脚本文件要有一个.rc的扩展名。大多数的脚本文件都从定义资源行开始,最简单的资源行通常要用到资源类型,就像这样: <br /><br /> [identifier] [resource type] [filename] <br />【标识符】 【资源类型】 【文件名称】 <br /><br />标识符可以用两种方式表示:一种是原创 2010-08-07 22:21:00 · 4588 阅读 · 0 评论 -
深入浅出MFC笔记第二章
<br />1. 函数的调用是依赖指针的原始类型而不管它实际指向何方。<br />2. 虚函数是在程序执行期进行的动态绑定或后期绑定;而非虚函数是程序在编译时间进行的静态绑定或前期绑定。<br />3. 纯虚拟函数不需定义其实际动作,它的存在只是为了在衍生类别中被重新定义,只是为<br />了提供一个多态接口。只要是拥有纯虚拟函数的类别,就是一种抽象类别,它是不能够<br />被具象化的,也就是说,你不能根据它产生一个对象。<br />virtual void displ原创 2010-08-14 11:19:00 · 570 阅读 · 0 评论 -
MFC小技巧
Q1:双缓冲区的概念和应用!A1:开设的双缓冲区是指内存中开辟的“虚拟DC”和屏幕上的DC。通过先将图像绘制到“虚拟DC”上,再将已画好了的整个“虚拟画布”复制到屏幕DC上,分别对应CreateCompatible函数和BitBlt函数。原创 2010-09-19 09:10:00 · 542 阅读 · 0 评论 -
基于文档的MFC程序
<br /> 以前虽然自学过MFC,也仅仅是接触了基于对话框的,所以对于基于文档类的程序和框架机理根本就没搞清楚。趁这次机会,得好好弄个明白才行。<br /> 本来想从《深入浅出MFC》这本书上学习关于多文档的知识的,由于只有电子版,实在看得头疼,所以先在网上找了一些有关的资料,等买到了这本书后再看下。<br /> 这里是网上一个介绍多文档知识的连载,一共有8讲,第1次连载进行基本概念的介绍,第2~5次连载分别讲述文档模板、文档、视图和框架窗口四个类的功能和主要函数,连载6则综合阐述四个类之间的关系,原创 2010-10-05 11:03:00 · 757 阅读 · 0 评论 -
error LNK2001: unresolved external symbol _main解决办法
<br />解决外部符号错误:_main,_WinMain@16,__beginthreadex <br />在创建MFC项目时, 不使用MFC AppWizard向导, 如果没有柚煤孟钅坎问? 就会在编译时产生很多连接错误, 如error LNK2001错误, 典型的错误提示有: <br />libcmtd.lib(crt0.obj) : error LNK2001: unresolved external symbol _main <br />LIBCD.lib(wincrt0.obj) : error转载 2010-12-02 11:26:00 · 827 阅读 · 0 评论 -
利用LineDDA函数来实现简单的图片移动动画
在《深入浅出MFC》中看到了LineDDA这个函数,例子是一个字符串从上之下的一个移动,这次稍微改动了一点,讲图像进行移动。首先我们来看这个函数的解释:BOOL LineDDA( intnXStart, // x-coordinate of starting point intnYStart, // y-coordinate of starting point intnXEnd, // x-coordinate原创 2010-10-14 21:32:00 · 1391 阅读 · 0 评论 -
新建一个多文档的MFC程序,怎样取消自动创建的文件呢?
<br /> 一般大家都会利用AppWizad生成一个多文档MFC应用程序时,它常常会自动为我们新建一个文件。这时候,如果想取消自动生成的文件时,应该怎么做呢?<br /> 下面是我在《Visual C++ 数字图像处理》书中找到一种方法,希望对大家有帮助:<br /> <br /> 我的工程名为:BmpFrameWork,所以在CBmpFrameWorkApp类的InitInstance()函数中进行修改,如下:<br /> <br />BOOL CBmpFrameWorkApp::InitIn原创 2010-10-29 09:12:00 · 2665 阅读 · 0 评论 -
深入浅出MFC笔记——第一章
<br />int CALLBACK WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance,<br />LPSTR lpCmdLine, int nCmdShow)<br />{<br />if (!hPrevInstance)<br />if (!InitApplication(hInstance))<br />return (FALSE);<br />if (!InitInstance(hInstance, nCmdShow))<br />return原创 2010-08-05 10:38:00 · 607 阅读 · 0 评论 -
[VC/MFC]虚拟列表控件——显示上百万数据的列表控件
转自:http://kb.cnblogs.com/a/1314497/ 又是因为毕业设计,要求显示邮件正文,当时在网上找到,能够显示大量数据的控件,就发现了这个。后来仔细一看,还是觉得这个控件并不是很适合我的要求,虚拟列表控件是能够显示大量数据,但它终究是列表,和文本的显示格式可能会有偏差。不过仔细看后,觉得以后肯定会用到的,就留下来吧! 一、什么是虚拟列表控件转载 2010-05-20 16:17:00 · 5049 阅读 · 0 评论 -
好的MFC教程
http://tech.china.com/zh_cn/netschool/programme/c/656/20001207/vc01.html原创 2010-04-25 13:46:00 · 498 阅读 · 0 评论 -
链接库总结 收藏
<br />转自:http://bbs.ecjtu.org/read-htm-tid-26138.html<br /> 链接库分为动态链接库(dll)和静态链接库(lib) 当动态链接库有导出的数据,数据包括函数、类以及变量,就会生成一个.lib文件,注意这个.lib文件不是静态链接库而是导出库。 链接库的加载方式静态链接库的加载方式只有一种#pragma comment(lib, ".lib") 动态链接库的加载方式有两种:一种静态加载先导入库#pragma comment(lib, ".lib"),这个转载 2010-06-27 22:02:00 · 535 阅读 · 0 评论 -
孙鑫VC视频教程笔记——Lesson1
许久都没练过VC了,现在开始慢慢捡起——“练武先练功” 1.函数指针——函数名代表函数的首地址2.组合类型用‘|’,拆分类型用~加上要拆分的类型和其它的类型相‘&’3.回调函数——应用程序编写代码,操作系统自己调用4.sprintf是将内容格式化到一个缓冲区内5.BeginPaint()和EndPaint()只能用在WM_PAINT响应中,而GetDC()和RelaseDC()原创 2010-05-08 16:04:00 · 530 阅读 · 0 评论 -
孙鑫VC视频教程笔记——Lesson2
1.函数重载发生在一个类里的,而函数的覆盖是发生在两个类之间(比如父类和子类)2.如果在基类中有一个函数是虚函数,子类有调用子类的,子类没有调用父类的。3.纯虚函数类似于JAVA中的接口类,必须被实现了才能创建对象。4.引用相当于给变量起别名,它必须在声明时就初始化。tip:按F2可以重命名文件5.在包含头文件时,使用“”和6.预编译指令符#ifndef #define #endif可以用于防止重原创 2010-05-10 23:01:00 · 802 阅读 · 0 评论 -
CListCtrl操作总结
这方面比较好的一篇总结:http://www.cppblog.com/amazon/archive/2008/11/29/68159.aspx 条款1:如何在CListCtrl中添加CheckBox m_mailListC.SetExtendedStyle(LVS_EX_CHECKBOXES); 条款2:添加属性列m_mailListC.InsertColumn(0,_原创 2010-05-11 21:30:00 · 496 阅读 · 0 评论 -
CButton操作总结
CButton控件是MFC控件中用的最多的一个控件了,以下是对它的操作的总结: 条款1:获取CButton控件上的内容CString str = NULL;button.GetWindowText(str);button.SetWindowText(_T("smart")); 条款2:改变按钮的使用状态CButton* button; butto原创 2010-05-13 10:57:00 · 855 阅读 · 0 评论 -
[转]VC++ Tab Control控件的使用
以前一直没认真去搞懂这个控件,这篇文章确实很好! 1. 新建一个MFC工程, 取名MyTab, 选择Dialog based, 然后Finish. 2. 删除对话框上默认添加的三个控件. 添加Tab Control控件并在Property属性中设置ID为IDC_TABTEST 在More Styles里勾上Bottom. 调速尺寸使其布满整个对话框, 我这边Tab Control的尺寸最原创 2010-05-15 08:54:00 · 476 阅读 · 0 评论 -
找不到WM_INIDIALOG消息
在新建的对话框的响应消息中找不到WM_INIDIALOG消息,请教大牛~原创 2010-05-15 23:04:00 · 471 阅读 · 0 评论 -
VC++ 的MFC 和ATL 及COM 是什么?
<br />转自:http://blog.csdn.net/yanghao58686763/archive/2008/03/17/2192578.aspx<br />一、什么是MFC<br /> 微软基础类(Microsoft Foundation Classes),实际上是微软提供的,用于在C++环境下编写应用程序的一个框架和引擎,VC++是WinOS下开发人员使用的专业C++ SDK(SDK,Standard SoftWare Develop Kit,专业软件开发平台),MFC就是挂在它之转载 2010-07-10 21:35:00 · 647 阅读 · 0 评论 -
线程函数中操作DC的注意事项
<br /> 第一次在MFC中写多线程代码,很多东西都不太清楚!比如这次遇到的在线程函数中操作DC,之前是让所有线程都共用一个DC,一直调试不通,经过新师兄的提点,终于找到原因了!<br /> 在多线程函数中操作DC,应该在线程函数中,为每一个线程定义一个DC。<br /> hWnd = ::AfxGetMainWnd()->GetSafeHwnd(); hDC = ::GetDC(hWnd);<br />原创 2010-11-04 16:34:00 · 977 阅读 · 0 评论