mfc1
一、了解知识
1.1
利用MFC进行可视化编程,要熟悉几个视图——类视图,资源视图,工具箱等
解决方案资源管理器——用来管理程序的代码(.h啊.cpp啊都在这里了)。
类视图——用来管理程序中的类(添加类成员啊都可以在这里)。
资源视图——管理程序的外部资源 工具箱——各种控件都在这里。
属性窗口——修改属性,消息响应,函数重写。
1.2
1、数据更新、刷新
UpdateData(true); //将edit box中看到的内容传给系统
UpdateData(false); //将系统中的变量传出来,显示在edit box
2、#include不在当前工程文件夹下的头文件
#include ".//fader_window//FaderWnd.h"
3、全局变量的定义
工程名.h中extern CDatabase theDB; //在函数体之外
工程名.cpp中CDatabase theDB; //在函数函数体之外
1.3
编写一个简单的计算器程序,实现对输入数的四则运算,主要步骤如下:
1、在对话框中放置按钮控件和编辑框控件
具体操作:界面右边点击工具箱,根据具体需要选择具体控件。
2、将编辑框控件添加float型变量m_edit1。
具体操作:选中编辑框点右键添加变量,将右边类别改为value,变量名分别改为m_edit1。3、将按钮控件重新命名
具体操作:选中按钮点击右键属性,将Caption改为所需要+ - * / 清除 关闭,具体可根据需要来命名。
4.UpdateDate()函数的使用:
UpdateData() 是MFC的窗口函数,用来刷新数据的。
UpdateData()参数只有一个,默认为TRUE。
UpdateData(TRUE)——刷新控件的值到对应的变量。(外部输入值交给内部变量)即:控件的值—>变量。
UpdateData(FALSE)—— 拷贝变量值到控件显示。(变量的最终运算结果值交给外部输出显示)
即:变量值—>控件显示。
Updatedata(TRUE) == 将控件的值赋值给成员变量,即从窗口编辑框中读入数据;Updatedata(FALSE)== 将成员变量的值赋值给控件,将数据从窗口显示。
5.CString 与float 类型:用_ttof()的转换
Float 与CString 的转换:m_result.Format(L"%f", result);
1.4
MFC中TXT文件读写
正确的文本文件读写过程:
1.定义文件变量;2.打开指定的文件;3.向从文本文件中写入信息;4.从文本文件中读取信息;5.关闭文件
1、定义文件变量
定义文件变量格式:CStdioFile 文件变量;
例如,定义一个名称为f1的文件变量,语句如下:CStdioFile f1;
2、打开指定文件
可以直接通过CStdioFile的构造函数来打开磁盘文件,同时可以用标志位指定打开方式(只读、只写、读写等):
CStdioFile(LPCTSTR lpszFileName,UINT nOpenFlags);
其中,lpszFileName表示要打开的文件名,可以是相对路径或绝对路径
nOpenFlags设置文件打开方式标志位,可以指定用“|”连接多个标志位。下面是常用的打开标志:CFile::typeText:以文本文件的形式打开文件
3.向从文本文件中写入信息
CStdioFile提供了函数WriteString来向文本文件中写入文本,WriteString函数的格式如下:
void WriteString(LPCTSTR lpsz);
WriteString的参数lpsz是一个以”\0”字符结束的字符串,要把这个字符串的内容写入文件。
使用WriteString函数时,如果希望每执行一次WriteString,文本文件中的内容就会自动换行一次,那么就需要在需要换行的地方输出“\n”: myFile.WriteString(“第1行\n”);
4.从文本文件中读取信息
CStidoFile提供了函数ReadString来读取文本,ReadString有两种形式,一种为:
virtual LPTSTR ReadString(LPTSTR lpsz, UINIT nMax);
ReadString函数的参数如下:
lpsz :是用户提供的一个指向字符串的指针,它用来接受从文件读出的文本,以”\0”结束。
nMax是本次所允许读入的文本字符个数,不计“\0”字符,也就是说最多能读入nMax-1个文本字符。
ReadString的返回值是一个LPTSTR类型的指针,它指向从文件读出的文本字符串,如果到达文件尾,则返回NULL。
ReadString的另一种形式为:
BOOL ReadString(CString& rString);
参数rString用来容纳从文件读出的文本。
CString版本忽略回车换行符,返回值是一个布尔值。如果返回值为FALSE,表示因到达文件尾而没有读到任何字符。
每执行一次ReadString,就会自动从文本文件中读取一行数据,同时文件操作指针会自动跳转到下一行。
5.关闭文件
对文件的操作完成后,使用CloseFile关闭文件。