动态链接库使用2(基于对话框)
来源:互联网 发布:c语言中cout什么意思 编辑:程序博客网 时间:2024/06/05 12:38
求球体、长方体,圆柱体表面积和体积。
1.建立动态链接库
1)Visual C++6.0启动后,要先建立一个project工程文件。方法为:
·选择File|new 菜单项,将弹出New 对话框。
·单击Projects 选项卡
·在Location中填用户子目录路径
·在Project name中填入工程名(如area)
·在列表中选择MFC AppWizard(dll),表示你编制的应用程序将生成动态链接库文件(.dll)
·按照提示创建一个自己想要的工程
² 定位到area.h文件处,添加动态链接库的函数原型声明,下面为area.h的内容:
double qius(double r);
double qiuv(double r);
double chs(double a,double b,double c);
double chv(double a,double b,double c);
double yus(double r,double h);
double yuv(double r,double h);
² 定位到area.cpp 文件处,添加动态链接库中的函数的实现部分,下面为area.cpp的内容:
double qius(double r)
{ return 4.0*3.1416*r*r;}
double qiuv(double r)
{ return 4.0/3.0*3.1416*r*r*r;}
double chs(double a,double b,double h)
{return 2*(a+b+h);}
double chv(double a,double b,double h)
{ return a*b*h ;}
double yus(double r,double h)
{return (3.1416*r*r*2+3.1416*r*2*h);}
double yuv(double r,double h)
{ return (3.1416*r*r*h) ;}
² 在area.def中引出DrawTree函数,下面为area.def的内容。
qius
qiuv
chs
chv
yus
yuv
链接全部
2)新建可执行程序
建立一个基于对话框的文件exe1
² 在exe1.cpp中添加如下文件:
BOOL CExe1App::InitInstance()
{ SetDialogBkColor (RGB(0,0,255),RGB(255,255,0));
AfxEnableControlContainer();}
把对话框背景设置为蓝色,字体颜色设为黄色
设置4个edit 筐,分别代表半径,长,宽,高;6个按钮分别代表球体表面积,球体体积,长方体表面积,长方体体积,圆柱体表面积,圆柱体体积;另外设置六个edit筐来分别显示结果。
² : 在view中class wizard中在设置一下各个控件的属性,把10个edit 筐IDC_EDIT1~1都设为double类型,按钮都设置为BN-CLICKED;
² :在exe1Dlg.cpp中添加如下代码:
void CExe1Dlg::OnButton1()
{ UpdateData();
m_qius=qius(m_r);
UpdateData(false );
// TODO: Add your control notification handler code here
}
void CExe1Dlg::OnButton2()
{ UpdateData();
m_qiuv=qius(m_r);
UpdateData(false );
// TODO: Add your control notification handler code here
}
void CExe1Dlg::OnButton3()
{ UpdateData();
m_chs=chs(m_a,m_b,m_h);
UpdateData(false );
// TODO: Add your control notification handler code here
}
void CExe1Dlg::OnButton4()
{ UpdateData();
m_chv=chv(m_a,m_b,m_h);
UpdateData(false );
// TODO: Add your control notification handler code here
}
void CExe1Dlg::OnButton5()
{ UpdateData();
m_yus=yus(m_r,m_h);
UpdateData(false );
// TODO: Add your control notification handler code here
}
void CExe1Dlg::OnButton6()
{ UpdateData();
m_yuv=yuv(m_r,m_h);
UpdateData(false );
// TODO: Add your control notification handler code here
}
² :记得添加头文件“area.h”,然后吧链接库中的三个文件:area.dll,area.h,area.lib复制黏贴到exe1文件下。
² :工程设置中,点击link,输入要链接的库area.lib
² :最后重新链接全部,编译运行。
原始运行界面如下:
- 动态链接库使用2(基于对话框)
- 使用cmake生成基于静态库的动态链接库
- 使用动态链接库
- 动态链接库使用
- 使用动态链接库
- 使用动态链接库
- 动态链接库(DLL)总结---简单使用(2)
- 动态链接库(DLL)的使用
- 使用动态链接库(DLL)
- Qt使用动态链接库(简介)
- 静态链接库和动态链接库使用总结(2)
- 动态链接库使用:静/动态链接库使用总结
- C#调用C++动态链接库之Win32dll(函数)、MFCdll(对话框)
- 如何使用动态链接库
- 动态链接库使用举例
- 动态链接库的使用
- 动态链接库(dll) 使用
- 动态链接库的使用
- 试验网站#3搜索引擎优化收录情况记录2007-11-28
- C#源码读取excel数据到程序中-SQL SERVER-到dataset中
- Java的一个格式转换函数
- 中国神话故事中的仙佛怪关系整理
- 动态链接库的制作与调用
- 动态链接库使用2(基于对话框)
- java程序员面试32问
- 小学生造句!吃饭时勿看
- WXGA TFT和XGA TFT的区别
- 给中国学生的第二封信-从优秀到卓越
- 爆笑小學生造句
- 小学生造句[搞笑]
- 子父类问题.JAVA基础
- 昨晚和老弟聊天