// AdditionDlg.cpp: 实现文件
//
#include "pch.h"
#include "framework.h"
#include "Addition.h"
#include "AdditionDlg.h"
#include "afxdialogex.h"
#include "CTipDlg.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#endif
// 用于应用程序“关于”菜单项的 CAboutDlg 对话框
class CAboutDlg : public CDialogEx
{
public:
CAboutDlg();
// 对话框数据
#ifdef AFX_DESIGN_TIME
enum { IDD = IDD_ABOUTBOX };
#endif
protected:
virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV 支持
// 实现
protected:
DECLARE_MESSAGE_MAP()
};
CAboutDlg::CAboutDlg() : CDialogEx(IDD_ABOUTBOX)
{
}
void CAboutDlg::DoDataExchange(CDataExchange* pDX)
{
CDialogEx::DoDataExchange(pDX);
}
BEGIN_MESSAGE_MAP(CAboutDlg, CDialogEx)
END_MESSAGE_MAP()
// CAdditionDlg 对话框
CAdditionDlg::CAdditionDlg(CWnd* pParent /*=nullptr*/)
: CDialogEx(IDD_ADDITION_DIALOG, pParent)
, m_editSummand(0)
, m_editAddend(0)
, m_editSum(0)
{
m_hIcon = AfxGetApp()->LoadIcon(IDR_MAINFRAME);
}
void CAdditionDlg::DoDataExchange(CDataExchange* pDX)
{
//处理MFC默认的数据交换
CDialogEx::DoDataExchange(pDX);
//处理控件IDC_SUMMAND_EDIT和变量m_editSummand之间的数据交换
DDX_Text(pDX, IDC_SUMMAND_EDIT, m_editSummand);
//处理控件IDC_ADDEND_EDIT和变量m_editAddend之间的数据交换
DDX_Text(pDX, IDC_ADDEND_EDIT, m_editAddend);
//处理控件IDC_SUM_EDIT和变量m_editSum之间的数据交换
DDX_Text(pDX, IDC_SUM_EDIT, m_editSum);
}
BEGIN_MESSAGE_MAP(CAdditionDlg, CDialogEx)
ON_WM_SYSCOMMAND()
ON_WM_PAINT()
ON_WM_QUERYDRAGICON()
ON_BN_CLICKED(IDC_ADD_BUTTON, &CAdditionDlg::OnClickedAddButton)
END_MESSAGE_MAP()
// CAdditionDlg 消息处理程序
BOOL CAdditionDlg::OnInitDialog()
{
CDialogEx::OnInitDialog();
// 将“关于...”菜单项添加到系统菜单中。
// IDM_ABOUTBOX 必须在系统命令范围内。
ASSERT((IDM_ABOUTBOX & 0xFFF0) == IDM_ABOUTBOX);
ASSERT(IDM_ABOUTBOX < 0xF000);
CMenu* pSysMenu = GetSystemMenu(FALSE);
if (pSysMenu != nullptr)
{
BOOL bNameValid;
CString strAboutMenu;
bNameValid = strAboutMenu.LoadString(IDS_ABOUTBOX);
ASSERT(bNameValid);
if (!strAboutMenu.IsEmpty())
{
pSysMenu->AppendMenu(MF_SEPARATOR);
pSysMenu->AppendMenu(MF_STRING, IDM_ABOUTBOX, strAboutMenu);
}
}
// 设置此对话框的图标。 当应用程序主窗口不是对话框时,框架将自动
// 执行此操作
SetIcon(m_hIcon, TRUE); // 设置大图标
SetIcon(m_hIcon, FALSE); // 设置小图标
// TODO: 在此添加额外的初始化代码
return TRUE; // 除非将焦点设置到控件,否则返回 TRUE
}
void CAdditionDlg::OnSysCommand(UINT nID, LPARAM lParam)
{
if ((nID & 0xFFF0) == IDM_ABOUTBOX)
{
CAboutDlg dlgAbout;
dlgAbout.DoModal();
}
else
{
CDialogEx::OnSysCommand(nID, lParam);
}
}
// 如果向对话框添加最小化按钮,则需要下面的代码
// 来绘制该图标。 对于使用文档/视图模型的 MFC 应用程序,
// 这将由框架自动完成。
void CAdditionDlg::OnPaint()
{
if (IsIconic())
{
CPaintDC dc(this); // 用于绘制的设备上下文
SendMessage(WM_ICONERASEBKGND, reinterpret_cast<WPARAM>(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
{
CDialogEx::OnPaint();
}
}
//当用户拖动最小化窗口时系统调用此函数取得光标
//显示。
HCURSOR CAdditionDlg::OnQueryDragIcon()
{
return static_cast<HCURSOR>(m_hIcon);
}
void CAdditionDlg::OnClickedAddButton()
{
// TODO: 在此添加控件通知处理程序代码
//模态对话框 弹出消息对话框
INT_PTR nRes; // 用于保存DoModal函数的返回值
CTipDlg tipDlg; // 构造对话框类CTipDlg的实例
nRes = tipDlg.DoModal(); // 弹出对话框
if (IDCANCEL == nRes) // 判断对话框退出后返回值是否为IDCANCEL,如果是则return,否则继续向下执行
return;
// 将各控件中的数据保存到相应的变量
//UpdateData(TRUE)将被加数的值和加数的值分别保存到变量m_editSummand和m_editAddend
//TRUE 从 控件 传给 变量,FALSE 从 变量 传给 控件。
UpdateData(TRUE);
// 将被加数和加数的加和赋值给m_editSum
m_editSum = m_editSummand + m_editAddend;
// 根据各变量的值更新相应的控件。和的编辑框会显示m_editSum的值
//最后调用UpdateData(FALSE) 根据被加数、加数、和的值更新三个编辑框的显示值
UpdateData(FALSE);
}
没有合适的资源?快使用搜索试试~ 我知道了~
MFC 加法计算器 + 模态对话框 完整工程代码下载
共72个文件
tlog:18个
h:8个
obj:8个
2 下载量 50 浏览量
2023-10-07
08:31:07
上传
评论
收藏 152.47MB ZIP 举报
温馨提示
MFC 加法计算器 + 模态对话框 完整工程代码下载 MFC 加法计算器 + 模态对话框 完整工程代码下载 MFC 加法计算器 + 模态对话框 完整工程代码下载 MFC 加法计算器 + 模态对话框 完整工程代码下载 MFC 加法计算器 + 模态对话框 完整工程代码下载 MFC 加法计算器 + 模态对话框 完整工程代码下载 MFC 加法计算器 + 模态对话框 完整工程代码下载 MFC 加法计算器 + 模态对话框 完整工程代码下载 MFC 加法计算器 + 模态对话框 完整工程代码下载 MFC 加法计算器 + 模态对话框 完整工程代码下载 MFC 加法计算器 + 模态对话框 完整工程代码下载 MFC 加法计算器 + 模态对话框 完整工程代码下载 MFC 加法计算器 + 模态对话框 完整工程代码下载 MFC 加法计算器 + 模态对话框 完整工程代码下载 MFC 加法计算器 + 模态对话框 完整工程代码下载 MFC 加法计算器 + 模态对话框
资源推荐
资源详情
资源评论
收起资源包目录
Addition ( MFC 加法计算器 + 模态对话框).zip (72个子文件)
Addition.sln 1KB
.vs
Addition
v16
Browse.VC.db 68.55MB
.suo 74KB
ipch
3ad9eef8c6c6b199.ipch 137.31MB
70d5befdd3b9c533.ipch 137.31MB
2cd4af2ccd0d5cb.ipch 137.31MB
x64
Debug
Addition.pdb 10.03MB
Addition.exe 260KB
Addition
Addition.h 490B
Addition.cpp 3KB
AdditionDlg.h 754B
resource.h 1KB
CMyDialog.cpp 527B
framework.h 2KB
Addition.vcxproj.user 234B
AdditionDlg.cpp 5KB
res
Addition.ico 66KB
Addition.rc2 672B
pch.h 544B
CTipDlg.h 405B
x64
Debug
Addition.exe.recipe 335B
vc142.idb 1.39MB
vc142.pdb 6.76MB
Addition.log 138B
Addition.obj 99KB
Addition.tlog
CL.write.1.tlog 10KB
rc.command.1.tlog 1KB
rc.write.1.tlog 746B
Addition.lastbuildstate 233B
rc.read.1.tlog 11KB
CL.command.1.tlog 12KB
link.command.1.tlog 6KB
link.read.1.tlog 22KB
link.write.1.tlog 3KB
CL.read.1.tlog 324KB
Addition.pch 56.19MB
CMyDialog.obj 30KB
pch.obj 741KB
Addition.ilk 1.84MB
CTipDlg.obj 30KB
Addition.res 69KB
AdditionDlg.obj 73KB
Addition.aps 91KB
CTipDlg.cpp 508B
Addition.rc 12KB
pch.cpp 158B
CMyDialog.h 412B
Debug
Addition.exe.recipe 282B
vc142.idb 1.33MB
vc142.pdb 6.62MB
Addition.log 126B
Addition.obj 79KB
Addition.tlog
CL.write.1.tlog 1KB
rc.command.1.tlog 370B
rc.write.1.tlog 190B
Addition.lastbuildstate 186B
rc.read.1.tlog 4KB
CL.command.1.tlog 2KB
link.command.1.tlog 2KB
link.read.1.tlog 7KB
link.write.1.tlog 658B
CL.read.1.tlog 106KB
Addition.pch 55.81MB
pch.obj 702KB
Addition.ilk 1.59MB
Addition.res 68KB
AdditionDlg.obj 58KB
Addition.vcxproj 10KB
Addition.vcxproj.filters 2KB
targetver.h 295B
Debug
Addition.pdb 8.18MB
Addition.exe 217KB
共 72 条
- 1
资源评论
R-G-B
- 粉丝: 1409
- 资源: 114
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功