首页 > 编程知识 正文

头文件怎么用(怎么建投文件)

时间:2023-05-04 00:02:52 阅读:90796 作者:4113

1 工作区、工程名及文件和类

VC在创建新项目的同时创建新工作区。 在这种情况下,一个工作区可以包含多个项目,因此可以使用. dsw工作区打开新项目(dsp )。 例如,如果要开发客户端/服务器,则必须单独定义项目。

也可以直接创建工作区,以包含当时已经完成的项目. dsp。

或者,直接创建项目,然后选择“添加到当前工作区”。

创建对话框程序时,会自动添加. h和. cpp文件,其中包含从MFC类继承的声明和实现体系结构。

如果添加的是test3项目名称,则文件名和默认添加的类名如下:

文件名: test3,对应的类名和基类: class CT est3app :公共快照

文件名: test3Dlg,对应的类名和基类: class CT est 3d LG :公共诊断

文件名:支持MFC类库的stdafx;

文件名: resource.h,资源控制的#define宣言;

CDialog前面的c表示类,atdafx表示标准应用程序框架。

CCmdTarget是具有消息吉鲁和消息处理机制的基类,在CWinThread中封装为线程,CWinApp类用于初始化每个实例。 CWnd是所有窗口类的基类。

工作区:

对话框程序的大部分工作都是映射控件的变量,如向CEdit编辑框的控件添加value和control变量,向按钮控件添加点击事件响应函数等(当然,这些类也可以通过声明常规数据成员和成员函数来实现。)

2 新建派生类

中,除了使用各控制类缺省提供的属性、方法操作之外,还可以重载这些控制类,实现CEdit类重载、添加CEditBox派生类等必要的功能

(虽然在上面的对话框中也可以添加与继承无关的MFC类以外的通用类,但是菜单中的新类与ctrl W中的新类有一些不同。)

2.1presubclasswindow (的过载) )。

voidceditbox :3360 presubclasswindow (

{

setlimittext(-1; //设定编辑控件可以接收的最大字节数

在cedit :3360 presubclasswindow (;

}

在CEditBox头文件中添加以下变量定义:

颜色m _颜色; //文本颜色

颜色m _背景颜色; //背景颜色

蓝牙; //背景画笔

字体p字体; //字体指针

int m_FontSize; //字体大小(1/10点) ) ) ) )。

字符串字体名称; //字体名称

用CEditBox的构造函数设定初始值。

编辑盒:编辑盒()

{

m _ forecolor=RGB (0,0,0 ); //文字颜色(黑色) )。

m _背色=RGB (255,255,255 ); //文字的背景颜色(白色)

m _ bk brush .创建实体刷(m _ back color ); //背景画笔

p _字体=空值; //字体指针

}

要重复使用在CEditBox析构函数中创建的字体资源,请执行以下操作:

cedit box :至cedit box () ) )。

{

if (p _字体)是指

删除字体; //回收字体资源

}

声明和实现成员函数

//设置字体

voidceditbox :3360设置文本字体(int字体,lpctstr字体名称)。

{

删除字体;删除字体;

p _字体=新字体;

p _字体-创建字体(字体名称);

设置字体(p _字体;

m_FontSize=FontSize;

字体名称=字体名称;

}

将CEditBox类变量添加到编辑框的控件中:

添加编辑框,然后将#include 'EditBox.h '添加到testDlg.h中。 对于VC6,首先将CTestDlg类的CEdit类(control而不是value )与控件相关联,然后在头文件中将类重命名为CEditBox。

CEditBoxm_editc1;

使用控件的消息响应函数通过派生类对象响应上述成员函数

Void CT EST DLG : on按钮1 ()

{

m_editC1.setbkcolor(RGB ) 255、255、255 );

“宋体”);

}

3 添加Generic类

“插入”菜单类新建:

此时添加的类的基本框架是普通类(无派生关系、无基类)。

4 在工程中插入文件

可以直接将新文件添加到项目中。

除了缺省情况下添加的类声明和实现之外,还可以将具有不属于类的函数声明的结构添加到添加到上述新类的头文件和源文件中。 如果希望通过普通函数而不是通过类的成员函数实现某些东西,则直接创建. h头文件. cpp源文件来实现普通函数是合适的。 这样,在类的成员函数和消息响应函数中包括头文件和extern声明中也可以调用这些常规函数。 (从类的指针或实例中调用属于类的成员的属性或成员函数,直接调用不属于类的全局变量和函数。 当然,它必须包含声明类或全局函数的头文件。)

-结束-

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。