河南机电高等专科学校毕业设计说明书
//
// CzhongjianzhApp
BEGIN_MESSAGE_MAP(CzhongjianzhApp, CWinApp) END_MESSAGE_MAP() // CzhongjianzhApp 构造
CzhongjianzhApp::CzhongjianzhApp() { // TODO: 在此处添加构造代码,
// 将所有重要的初始化放置在 InitInstance 中
}
// 唯一的一个 CzhongjianzhApp 对象 CzhongjianzhApp theApp; // CzhongjianzhApp 初始化
BOOL CzhongjianzhApp::InitInstance() { CWinApp::InitInstance(); return TRUE;
}
extern\
int argc,
char* argv[], char* version, char* build,
wchar_t errbuf[80])
{ ProError status; ProFileName Msg;
uiCmdCmdId uiCmdNewMdl;
ProStringToWstring(Msg,\
status=ProCmdActionAdd(\新建全新对象命令\
- 16 -
河南机电高等专科学校毕业设计说明书
uiCmdPrioDefault,UsrAccessDefault,PRO_B_TRUE,PRO_B_TRUE,&
uiCmdNewMdl); //返回动作函数的标识给参数uiCmdNewMdl status=ProMenubarmenuPushbuttonAdd(\
\
Mdl\//将动作函数与菜单联系起来 }
extern\{ }
void MenuNewMdl() {
ProMdl mdl;
ProPath a; return 0;
//将零件三维造型图的位置路径赋给参数a
ProStringToWstring(a,\图形\\\\zhongjianzhou.prt\
//打开零件三维造型图
ProMdlLoad(a,PRO_MDL_UNUSED,PRO_B_FALSE,&mdl); ProMdlDisplay(mdl);
AFX_MANAGE_STATE(AfxGetStaticModuleState()); }
dlg.DoModal();//模式方式显示对话框
3.2 MFC对话框的建立及运行
3.2.1 新建一个MFC DLL的项目
新建一个名称为“zhongjianzhou”的MFC DLL项目,并设置好头文件、库文件、和项目的属性,然后在项目的主文件zhongjianzhou.cpp内添加常用的
头文件、初始化函数和终止函数。 图3-1 MFC对话框
- 17 -
河南机电高等专科学校毕业设计说明书
3.2.2 创建对话框资源
在VC的【资源视图】里面添加对话框资源并在对话框上添加3个Button按钮、9个编辑控件(Edit Control)、9个静态文本控件(Static Text),将对话框的Caption属性改为“毕业设计”,如图3-1所示,各控件的ID及属性设置如表3-1所示。
表3-1 对话框控件设置
控件类型 Button Control Edit Control ID 属性设置 控件类型 Static Text ID IDC_STATIC 属性设置 Caption:中间段长ml: Caption:两端段长sl: Caption:两端段直径sd: Caption:中Edit Control IDC_sd Static Text IDC_STATIC 间段直径md: Edit Control IDC_md Static Text IDC_STATIC Caption:槽段长cl: Caption:槽段直径cd: Caption:两Edit Control IDC_cd Static Text IDC_STATIC 端段倒角sda: Edit Control IDC_sda Static Text IDC_STATIC Caption:槽段倒角cda: Caption:槽段圆角cy: IDC_zaisheng Caption:再生 IDC_ml Static Text IDC_STATIC Edit Control IDC_sl Static Text IDC_STATIC Edit Control IDC_cl Static Text IDC_STATIC Edit Control Edit Control IDC_cda IDC_cy Static Text IDC_STATIC
3.2.3 创建对话框类
(1)设计好对话框界面后,就可以创建一个对话框类了。方法是双击设计好
- 18 -
河南机电高等专科学校毕业设计说明书
的对话框窗口,然后输入对话框类的名称zhongjianzhoudlg,如图3-2所示。
图3-2 创建对话框类
(2)给对话框窗口上的编辑控件添加double类型的变量如图3-3所示。
图3-3 添加成员变量对话框
(3)用相同的方法给各个编辑框添加double类型。
(4)分别双击【确定】、【取消】和【再生】按钮,给按钮添加事务处理程
- 19 -
河南机电高等专科学校毕业设计说明书
序。
(5)给类添加两个成员函数:
void input(double x); // 将编辑框中的数值传递给编辑框变量 void sets(double d, int n); // 将编辑框变量的值赋给对应的尺寸值
3.3 整个参数化的实现
3.3.1 编写代码,实现每个函数的功能
设置好类的成员变量成员函数之后,就可以编写代码以实现每个函数的功能,具体如下:
(1)对话框类头文件 #pragma once
// zhongjianzhdlg 对话框
class zhongjianzhdlg : public CDialog { public:
zhongjianzhdlg(CWnd* pParent = NULL); // 标准构造函数 virtual ~zhongjianzhdlg();
DECLARE_DYNAMIC(zhongjianzhdlg)
// 对话框数据
enum { IDD = IDD_biyesheji };
protected:
virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV 支持
DECLARE_MESSAGE_MAP()
public:
afx_msg void OnBnClickedOk(); afx_msg void OnBnClickedCancel(); // 中间段长 double ml; // 两端段长 double sl;
- 20 -