// AdditionDlg.cpp: 实现文件
//
#include "pch.h"
#include "framework.h"
#include "Addition.h"
#include "AdditionDlg.h"
#include "afxdialogex.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);
m_pTipDlg = NULL;
}
void CAdditionDlg::DoDataExchange(CDataExchange* pDX)
{
CDialogEx::DoDataExchange(pDX);
DDX_Text(pDX, IDC_SUMMADD_EDIT, m_editSummand);
DDX_Text(pDX, IDC_ADDEND_EDIT, m_editAddend);
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(IDOK, &CAdditionDlg::OnBnClickedOk)
ON_BN_CLICKED(IDCANCEL, &CAdditionDlg::OnBnClickedCancel)
ON_BN_CLICKED(IDC_ADD_BUTTON, &CAdditionDlg::OnClickedAddButton)
ON_EN_CHANGE(IDC_SUM_EDIT, &CAdditionDlg::OnEnChangeSumEdit)
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::OnBnClickedOk()
{
// TODO: 在此添加控件通知处理程序代码
CDialogEx::OnOK();
}
void CAdditionDlg::OnBnClickedCancel()
{
// TODO: 在此添加控件通知处理程序代码
CDialogEx::OnCancel();
}
void CAdditionDlg::OnClickedAddButton()
{
// TODO: 在此添加控件通知处理程序代码
// 如果指针变量m_pTipDlg的值为NULL,则对话框还未创建,需要动态创建
if (NULL == m_pTipDlg)
{
// 创建非模态对话框实例
m_pTipDlg = new CTipDlg();
m_pTipDlg->Create(IDD_TIP_DIALOG, this);
}
// 显示非模态对话框
m_pTipDlg->ShowWindow(SW_SHOW);
// 将各控件中的数据保存到相应的变量
UpdateData(TRUE);
// 将被加数和加数的加和赋值给m_editSum
m_editSum = m_editSummand + m_editAddend;
// 根据各变量的值更新相应的控件。和的编辑框会显示m_editSum的值
UpdateData(FALSE);
}
void CAdditionDlg::OnEnChangeSumEdit()
{
// TODO: 如果该控件是 RICHEDIT 控件,它将不
// 发送此通知,除非重写 CDialogEx::OnInitDialog()
// 函数并调用 CRichEditCtrl().SetEventMask(),
// 同时将 ENM_CHANGE 标志“或”运算到掩码中。
// TODO: 在此添加控件通知处理程序代码
}
没有合适的资源?快使用搜索试试~ 我知道了~
MFC 加法计算器 + 非模态对话框 完整工程演示代码下载
共47个文件
tlog:9个
h:7个
cpp:4个
1 下载量 95 浏览量
2023-10-06
21:49:14
上传
评论
收藏 121.13MB ZIP 举报
温馨提示
MFC 加法计算器 + 非模态对话框 完整工程演示代码下载 MFC 加法计算器 + 非模态对话框 完整工程演示代码下载 MFC 加法计算器 + 非模态对话框 完整工程演示代码下载 MFC 加法计算器 + 非模态对话框 完整工程演示代码下载 MFC 加法计算器 + 非模态对话框 完整工程演示代码下载 MFC 加法计算器 + 非模态对话框 完整工程演示代码下载 MFC 加法计算器 + 非模态对话框 完整工程演示代码下载 MFC 加法计算器 + 非模态对话框 完整工程演示代码下载 MFC 加法计算器 + 非模态对话框 完整工程演示代码下载 MFC 加法计算器 + 非模态对话框 完整工程演示代码下载 MFC 加法计算器 + 非模态对话框 完整工程演示代码下载 MFC 加法计算器 + 非模态对话框 完整工程演示代码下载 MFC 加法计算器 + 非模态对话框 完整工程演示代码下载 MFC 加法计算器 + 非模态对话框 完整工程演示代码下载 MFC 加法计算器 + 非模态对话框 完整工程演示代码下载 MFC 加法计算器 + 非模态对话框 完整工程演示代码下载 MFC
资源推荐
资源详情
资源评论
收起资源包目录
Addition ( MFC 加法计算器 + 非模态对话框).zip (47个子文件)
Addition.sln 1KB
.vs
Addition
v16
Browse.VC.db 68.47MB
.suo 55KB
ipch
ddd3131095bc6908.ipch 118.88MB
a813cf42954b5580.ipch 118.88MB
618e0a4675a11ae8.ipch 118.88MB
Addition
Addition.h 490B
Addition.cpp 3KB
AdditionDlg.h 908B
resource.h 1008B
framework.h 2KB
Addition.vcxproj.user 234B
AdditionDlg.cpp 5KB
res
Addition.ico 66KB
Addition.rc2 672B
pch.h 544B
CTipDlg.h 406B
Addition.aps 108KB
CTipDlg.cpp 508B
Addition.rc 12KB
pch.cpp 158B
Debug
Addition.exe.recipe 334B
vc142.idb 1.39MB
vc142.pdb 6.65MB
Addition.log 133B
Addition.obj 80KB
Addition.tlog
CL.write.1.tlog 7KB
rc.command.1.tlog 1KB
rc.write.1.tlog 706B
Addition.lastbuildstate 238B
rc.read.1.tlog 11KB
CL.command.1.tlog 10KB
link.command.1.tlog 6KB
link.read.1.tlog 21KB
link.write.1.tlog 3KB
CL.read.1.tlog 322KB
Addition.pch 55.81MB
pch.obj 703KB
Addition.ilk 1.57MB
CTipDlg.obj 27KB
Addition.res 68KB
AdditionDlg.obj 64KB
Addition.vcxproj 10KB
Addition.vcxproj.filters 2KB
targetver.h 295B
Debug
Addition.pdb 8.87MB
Addition.exe 221KB
共 47 条
- 1
资源评论
R-G-B
- 粉丝: 1775
- 资源: 114
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功