MFC初学--简单的图形界面(打开计算器,画图,记事本)

目录:D:\Cpp\Examples\学习C++的每一天\第7天10.28\Calculator

实现功能:

编写了一个简单的图形界面,以实现打开计算器、打开记事本、打开画图以及查看本机DNS地址四项功能。

  step1:添加BUTTON控件,修改ID为相应的功能名字,比如IDC_calculate;IDC_note;……

  step2:双击控件,跳转到函数界面,添加以下程序

void CCalculatorDlg::OnBnClickedcal()
{
	// TODO: 在此添加控件通知处理程序代码
	HINSTANCE hRslt = ShellExecute(NULL, _T("open"),
	_T("calc.exe"), NULL, NULL, SW_SHOWNORMAL);
	assert(hRslt > (HINSTANCE)HINSTANCE_ERROR);
}

这个打开的是微软内置的应用,其他记事本,ip地址,只需改动之间行代码即可。

 _T("notepad.exe"),NULL,NULL,SW_SHOWNORMAL);//打开记事本

_T("Nslookup.exe"),NULL,NULL,SW_SHOWNORMAL);//查看IP地址

_T("mspaint.exe"),NULL,NULL,SW_SHOWNORMAL);//打开画图工具

   step3:在 .cpp 文件的最上方 添加   头文件   方便调用打开计算器的程序。

  #include <assert.h>  

注意:

  •    控件ID地址修改后,对应的函数也会重新成成,原来的函数已经没有了定义。

          控件添加后,就会自己添加函数的定义,分别在

     ① 在对话框的如下部分定义: OnBnClickedButton1

扫描二维码关注公众号,回复: 3861472 查看本文章
BEGIN_MESSAGE_MAP(CCalculatorDlg, CDialogEx)
	ON_WM_SYSCOMMAND()
	ON_WM_PAINT()
	ON_WM_QUERYDRAGICON()

	ON_BN_CLICKED(IDC_BUTTON1, &CCalculatorDlg::OnBnClickedButton1)
	
END_MESSAGE_MAP()

     ②  在  .cpp  文件的最下面自动生成一个函数

void CCalculatorDlg::OnBnClickedButton1()  
{
}
  • 如果修改了控件的ID,但是没有新建生成对应的映射函数,原来对应的函数还是生效的;

        比如:打开记事本的控件,原来ID是Button2,双击对应的函数是OnBnClickedButton2() ,程序调试无误,正确打开记事本;

                  现在修改 ID 为 IDC_note, 不双击生成新的函数,重新调试编译,这时候执行的函数是Button2(),测试修改程序内容为                    打开画图,结果打开的就是画图,可说明:哪怕修改了控件ID,只要不双击生成新的映射函数,就不能正确执行想要                    的结果;

                  对新的ID双击生成新的函数,但是如果不删除原来的定义,程序会报错,说Button2没有定义;这时候必须要删除前                      面的定义,后面的函数不删除也没关系,但是最好还是删除比较好。

猜你喜欢

转载自blog.csdn.net/qq_36079638/article/details/83546938
今日推荐