面向对象程序设计-课程设计-实验报告(2)

2020-04-18 06:21

class CMy113030601381Dlg : public CDialog {private:

CCreditDlg m_dlgCredit;

CIntegerCalculator m_dlgCalc; public:

CMy113030601381Dlg(CWnd* pParent = NULL); // standard constructor enum { IDD = IDD_MY113030601381_DIALOG }; CTabCtrl m_tabPanel; protected:

virtual void DoDataExchange(CDataExchange* pDX); protected:

HICON m_hIcon;

virtual BOOL OnInitDialog();

afx_msg void OnSysCommand(UINT nID, LPARAM lParam); afx_msg void OnPaint();

afx_msg HCURSOR OnQueryDragIcon();

afx_msg void OnSelchangeTab(NMHDR* pNMHDR, LRESULT* pResult); DECLARE_MESSAGE_MAP() };

//CreditDlg.h

class CCreditDlg : public CDialog {

public:

CCreditDlg(CWnd* pParent = NULL); enum { IDD = IDD_CREDIT_DIALOG };

CSpinButtonCtrl m_spinMonth; //旋钮控件 double m_dLoan; //贷款额 int m_nMonth; //还款月数 double m_dPay; //月还款额 double m_dRate; //月利率 double m_dTotalPay; //累计还款 protected:

virtual void DoDataExchange(CDataExchange* pDX); protected:

virtual BOOL OnInitDialog(); afx_msg void OnCalc(); DECLARE_MESSAGE_MAP() };

//IntegerCalculator.h

class CIntegerCalculator : public CDialog {

private:

6

int m_nOperand1; //保存第一个操作数对应的数值 int m_nOperand2; //保存第二个操作数对应的数值 int m_nOperator; //记录运算符标识

BOOL m_bOperator; //判断是否已经单击过运算符 public:

CIntegerCalculator(CWnd* pParent = NULL); // standard constructor void transform();

int octToDec(int value);

enum { IDD = IDD_Integer_Calculator }; int m_nValue; int m_nChoice; protected:

virtual void DoDataExchange(CDataExchange* pDX); protected:

afx_msg void OnB1();//按键“1” afx_msg void OnB2();//按键“2” afx_msg void OnB3();//按键“3” afx_msg void OnB4();//按键“4” afx_msg void OnB5();//按键“5” afx_msg void OnB6();//按键“6” afx_msg void OnB7();//按键“7” afx_msg void OnB8();//按键“8” afx_msg void OnB9();//按键“9” afx_msg void OnB0();//按键“0” afx_msg void OnBc();//按键“C” afx_msg void OnBequal();//按键“=” afx_msg void OnBadd();//按键“+” afx_msg void OnBsub();//按键“-” afx_msg void OnBmul();//按键“*” afx_msg void OnBdiv();//按键“/” afx_msg void OnRadiodec(); afx_msg void OnRadiooct(); afx_msg void OnCheckchoice(); virtual BOOL OnInitDialog(); DECLARE_MESSAGE_MAP() };

//Resource.h //StdAfx.h

//11303060138 李知澳 1.cpp //11303060138 李知澳 1.rc

7

//11303060138 李知澳 1Dlg.cpp

11303060138 李知澳 1Dlg.cpp : implementation file #include \

#include \李知澳 1.h\#include \李知澳 1Dlg.h\class CAboutDlg : public CDialog {

public:

CAboutDlg();

enum { IDD = IDD_ABOUTBOX }; protected:

virtual void DoDataExchange(CDataExchange* pDX); protected:

DECLARE_MESSAGE_MAP() };

CAboutDlg::CAboutDlg() : CDialog(CAboutDlg::IDD) {}

void CAboutDlg::DoDataExchange(CDataExchange* pDX) {CDialog::DoDataExchange(pDX);}

CMy113030601381Dlg::CMy113030601381Dlg(CWnd* pParent /*=NULL*/) : CDialog(CMy113030601381Dlg::IDD, pParent) {m_hIcon = AfxGetApp()->LoadIcon(IDR_MAINFRAME);}

void CMy113030601381Dlg::DoDataExchange(CDataExchange* pDX) {

CDialog::DoDataExchange(pDX);

DDX_Control(pDX, IDC_TAB, m_tabPanel); }

BOOL CMy113030601381Dlg::OnInitDialog() {

CDialog::OnInitDialog();

ASSERT((IDM_ABOUTBOX & 0xFFF0) == IDM_ABOUTBOX); ASSERT(IDM_ABOUTBOX < 0xF000);

CMenu* pSysMenu = GetSystemMenu(FALSE); if (pSysMenu != NULL) {

CString strAboutMenu;

strAboutMenu.LoadString(IDS_ABOUTBOX); if (!strAboutMenu.IsEmpty()) {

pSysMenu->AppendMenu(MF_SEPARATOR);

pSysMenu->AppendMenu(MF_STRING, IDM_ABOUTBOX, strAboutMenu); } }

8

SetIcon(m_hIcon, TRUE); // Set big icon SetIcon(m_hIcon, FALSE); // Set small icon

m_tabPanel.InsertItem(0,\整数计算器\插入标签 m_tabPanel.InsertItem(1,\房贷计算器\//创建两个对话框

m_dlgCalc.Create(IDD_Integer_Calculator,GetDlgItem(IDC_TAB)); m_dlgCredit.Create(IDD_CREDIT_DIALOG,GetDlgItem(IDC_TAB)); CRect rs; //获得IDC_TAB客户区大小 m_tabPanel.GetClientRect(&rs);

rs.top+=1; //调整子对话框在父窗口中的位置 rs.bottom-=20; rs.left+=1; rs.right-=1;

m_dlgCalc.MoveWindow(&rs); //移动子对话框到指定位置 m_dlgCredit.MoveWindow(&rs);

m_dlgCalc.ShowWindow(SW_SHOW); //设置显示 m_dlgCredit.ShowWindow(SW_HIDE); //设置隐藏 m_tabPanel.SetCurSel(0);//设置为默认的选项卡 return TRUE;

void CMy113030601381Dlg::OnSysCommand(UINT nID, LPARAM lParam) {

if ((nID & 0xFFF0) == IDM_ABOUTBOX) {

CAboutDlg dlgAbout; dlgAbout.DoModal(); } else

CDialog::OnSysCommand(nID, lParam); }

void CMy113030601381Dlg::OnPaint() {

if (IsIconic()) {

CPaintDC dc(this); // device context for painting

SendMessage(WM_ICONERASEBKGND, (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

9

CDialog::OnPaint(); }

HCURSOR CMy113030601381Dlg::OnQueryDragIcon() { return (HCURSOR) m_hIcon; }

void CMy113030601381Dlg::OnSelchangeTab(NMHDR* pNMHDR, LRESULT* pResult) {

int CurSel=m_tabPanel.GetCurSel(); //哪个标签被选中 switch(CurSel) {

case 0: //第一个标签被选中

m_dlgCalc.ShowWindow(SW_SHOW);//显示整数计算器对话框 m_dlgCredit.ShowWindow(SW_HIDE);//隐藏房贷计算器对话框 break;

case 1: //第二个标签被选中

m_dlgCalc.ShowWindow(SW_HIDE); m_dlgCredit.ShowWindow(SW_SHOW); break; }

*pResult = 0; }

//CreditDlg.cpp

#include \

#include \李知澳 1.h\#include \#include \

CCreditDlg::CCreditDlg(CWnd* pParent /*=NULL*/) : CDialog(CCreditDlg::IDD, pParent) {

m_dLoan = 0.0; m_nMonth = 0; m_dPay = 0.0; m_dRate = 0.0; m_dTotalPay = 0.0; }

void CCreditDlg::DoDataExchange(CDataExchange* pDX) {

CDialog::DoDataExchange(pDX);

DDX_Control(pDX, IDC_SPIN_MONTH, m_spinMonth); DDX_Text(pDX, IDC_LOAN, m_dLoan); DDX_Text(pDX, IDC_MONTH, m_nMonth); DDX_Text(pDX, IDC_PAY, m_dPay); DDX_Text(pDX, IDC_RATE, m_dRate);

DDX_Text(pDX, IDC_TOTALPAY, m_dTotalPay);

10


面向对象程序设计-课程设计-实验报告(2).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:扬州市第三人民医院敬老月活动总结

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: