利用VC做1个简单计算器.docx
文本预览下载声明
烟台南山学院计算机系《可视化程序设计Visual C++》作业2016-2017学年第二学期班 级:计算机科学与技术1401姓 名:张立阳学 号:201422031010专 业:计算机科学与技术指导教师:王玉健visual c++打造简单加法计算器并实现更换颜色背景开发环境:vs2013+.net 4.5上传地址:第一步新建mfc应用程序:并设定项目名称,项目位置路径添加控件,并添加变量定义三个整型变量:CfastjsqDlg::CfastjsqDlg(CWnd* pParent /*=NULL*/): CDialogEx(CfastjsqDlg::IDD, pParent), m_n1(0), m_n2(0), m_n3(0){m_hIcon = AfxGetApp()-LoadIcon(IDR_MAINFRAME)}结果按钮:void CfastjsqDlg::OnBnClickedButton1(){// TODO: 在此添加控件通知处理程序代码UpdateData(true);m_n3 = m_n2 + m_n1;UpdateData(false);}清除按钮:void CfastjsqDlg::OnBnClickedButton2(){// TODO: 在此添加控件通知处理程序代码m_n1 = m_n2 = m_n3 = 0;UpdateData(false);}简单计算器界面完成添加控件,并添加变量,实现背景颜色1、简单通过定义矩形进行默认颜色更换void CfastjsqDlg::OnPaint(){if (IsIconic()){CPaintDC dc(this); // 用于绘制的设备上下文SendMessage(WM_ICONERASEBKGND, reinterpret_castWPARAM(dc.GetSafeHdc()), 0);// 使图标在工作区矩形中居中int cxIcon = GetSystemMetrics(SM_CXICON);int cyIcon = GetSystemMetrics(SM_CYICON);CRect rect;GetClientRect(rect);int x = (rect.Width() - cxIcon + 1) / 2;int y = (rect.Height() - cyIcon + 1) / 2;// 绘制图标dc.DrawIcon(x, y, m_hIcon);}else{CRect rect; //定义矩形GetClientRect(rect);//得到客户端的矩形选区CPaintDC dc(this);//定义画笔dc.FillSolidRect(rect, RGB(2, 222, 255));//设置对话框和颜色CDialogEx::OnPaint();}}2、通过添加按钮调用进行默认颜色更换头文件中定义r.,g,bpublic:int m_n1;int m_n2;int m_n3;int r;int g;int b;afx_msg void OnBnClickedButton1();afx_msg void OnBnClickedButton2();afx_msg void OnBnClickedButton3();};在绘OnPaint中定义矩形改性rgb函数变换void CfastjsqDlg::OnPaint(){if (IsIconic()){CPaintDC dc(this); // 用于绘制的设备上下文SendMessage(WM_ICONERASEBKGND, reinterpret_castWPARAM(dc.GetSafeHdc()), 0);// 使图标在工作区矩形中居中int cxIcon = GetSystemMetrics(SM_CXICON);int cyIcon = GetSystemMetrics(SM_CYICON);CRect rect;GetClientRect(rect);int x = (rect.Width() - cxIcon + 1) / 2;int y = (rect.Height() - cyIcon + 1) / 2;// 绘制图标dc.DrawIcon(x, y, m_hIcon);}else{ CRect rect;GetClientRect(rect);CPaintDC dc(this); dc.FillSolidRect(rect, RGB(r, g, b)); //给背景添加色CDialog::OnPaint();}}变换颜色按钮添加代码void CfastjsqDlg::OnBnClickedButton3(){r = rand() %
显示全部