financeborrowadddlg.cpp

来自「这是一个学生信息管理系统」· C++ 代码 · 共 173 行

CPP
173
字号
// FinanceBorrowAddDlg.cpp : 实现文件
//

#include "stdafx.h"
#include "SMS.h"
#include "FinanceBorrowAddDlg.h"


// CFinanceBorrowAddDlg 对话框

IMPLEMENT_DYNAMIC(CFinanceBorrowAddDlg, CDialog)

CFinanceBorrowAddDlg::CFinanceBorrowAddDlg(CWnd* pParent /*=NULL*/)
	: CDialog(CFinanceBorrowAddDlg::IDD, pParent)
	, m_sOtherName(_T(""))
	, m_dAmount(0)
	, m_tDate(CTime::GetCurrentTime())
	, m_tStartDate(CTime::GetCurrentTime())
	, m_tEndDate(CTime::GetCurrentTime())
	, m_dMoneyLeft(0)
	, m_sRemark(_T(""))
	, m_sAction(_T("借入"))
	, m_pSet(&theApp.m_db )
{
	m_backcolor=m_RGB_BkColor;
	m_brush.CreateSolidBrush(m_backcolor);
}

CFinanceBorrowAddDlg::~CFinanceBorrowAddDlg()
{
}

void CFinanceBorrowAddDlg::DoDataExchange(CDataExchange* pDX)
{
	CDialog::DoDataExchange(pDX);
	DDX_CBString(pDX, IDC_FINANCE_BORROW_ADD_OTHERNAME_COMBO, m_sOtherName);
	DDV_MaxChars(pDX, m_sOtherName, 20);
	DDX_Text(pDX, IDC_FINANCE_BORROW_ADD_AMOUNT_EDIT, m_dAmount);
	DDX_DateTimeCtrl(pDX, IDC_FINANCE_BORROW_ADD_ODATE_DTP, m_tDate);
	DDX_DateTimeCtrl(pDX, IDC_FINANCE_BORROW_ADD_STARTTIME_DTP, m_tStartDate);
	DDX_DateTimeCtrl(pDX, IDC_FINANCE_BORROW_ADD_ENDDATE_DTP, m_tEndDate);
	DDX_Text(pDX, IDC_FINANCE_BORROW_ADD_MONEYLEFT_EDIT, m_dMoneyLeft);
	DDX_Text(pDX, IDC_FINANCE_BORROW_ADD_REMARK_EDIT, m_sRemark);
	DDX_Control(pDX, IDC_FINANCE_BORROW_ADD_OTHERNAME_COMBO, m_cOtherName);
	DDX_Control(pDX, IDC_STATIC1, m_cMoneyLeft);
	DDX_Control(pDX, IDC_FINANCE_BORROW_ADD_MONEYLEFT_EDIT, m_cMoneyLeft2);
	DDX_CBString(pDX, IDC_FINANCE_BORROW_ADD_TYPE_COMBO, m_sAction);
	DDX_Control(pDX, IDC_FINANCE_BORROW_ADD_STARTTIME_DTP, m_cStartDate);
	DDX_Control(pDX, IDC_FINANCE_BORROW_ADD_ENDDATE_DTP, m_cEndDate);
	DDX_Control(pDX, IDC_STARTDATE_STATIC, m_cStartDate2);
	DDX_Control(pDX, IDC_ENDDATE_STATIC, m_cEndDate2);
}


BEGIN_MESSAGE_MAP(CFinanceBorrowAddDlg, CDialog)
	ON_BN_CLICKED(IDOK, &CFinanceBorrowAddDlg::OnBnClickedOk)
	ON_CBN_SELCHANGE(IDC_FINANCE_BORROW_ADD_TYPE_COMBO, &CFinanceBorrowAddDlg::OnCbnSelchangeFinanceBorrowAddTypeCombo)
	ON_WM_CTLCOLOR()
END_MESSAGE_MAP()


// CFinanceBorrowAddDlg 消息处理程序

void CFinanceBorrowAddDlg::OnBnClickedOk()
{
	// TODO: 在此添加控件通知处理程序代码
	UpdateData();
	if(m_sOtherName==L"")
	{
		MessageBox(L"\n对方姓名不能为空!\n",L"提示",MB_ICONEXCLAMATION);
		return ;
	}
	if(m_sAction==L"")
	{
		MessageBox(L"\n请选择操作类型!\n",L"提示",MB_ICONEXCLAMATION);
		return ;
	}
    if(m_dAmount==0)
	{
		MessageBox(L"\n操作金额不能为空!\n",L"提示",MB_ICONEXCLAMATION);
		return ;
	}
	OnOK();
}

void CFinanceBorrowAddDlg::OnCbnSelchangeFinanceBorrowAddTypeCombo()
{
	// TODO: 在此添加控件通知处理程序代码
	UpdateData();
	if(m_sAction==L"还入"||m_sAction==L"还出")
	{
		m_cStartDate.ShowWindow (SW_HIDE);
		m_cEndDate.ShowWindow (SW_HIDE);
		m_cStartDate2.ShowWindow (SW_HIDE);
		m_cEndDate2.ShowWindow (SW_HIDE);
		m_cMoneyLeft.ShowWindow (SW_SHOW);
		m_cMoneyLeft2.ShowWindow (SW_SHOW);
	}
	else
	{
		m_cStartDate.ShowWindow (SW_SHOW);
		m_cEndDate.ShowWindow (SW_SHOW);
		m_cStartDate2.ShowWindow (SW_SHOW);
		m_cEndDate2.ShowWindow (SW_SHOW);
		m_cMoneyLeft.ShowWindow (SW_HIDE);
		m_cMoneyLeft2.ShowWindow (SW_HIDE);
	}
}

BOOL CFinanceBorrowAddDlg::OnInitDialog()
{
	CDialog::OnInitDialog();

	// TODO:  在此添加额外的初始化
	//首先根据类型来显示
	if(m_sAction==L"还入"||m_sAction==L"还出")
	{
		m_cStartDate.ShowWindow (SW_HIDE);
		m_cEndDate.ShowWindow (SW_HIDE);
		m_cStartDate2.ShowWindow (SW_HIDE);
		m_cEndDate2.ShowWindow (SW_HIDE);
		m_cMoneyLeft.ShowWindow (SW_SHOW);
		m_cMoneyLeft2.ShowWindow (SW_SHOW);
	}
	else
	{
		m_cStartDate.ShowWindow (SW_SHOW);
		m_cEndDate.ShowWindow (SW_SHOW);
		m_cStartDate2.ShowWindow (SW_SHOW);
		m_cEndDate2.ShowWindow (SW_SHOW);
		m_cMoneyLeft.ShowWindow (SW_HIDE);
		m_cMoneyLeft2.ShowWindow (SW_HIDE);
	}
	if(m_pSet.IsOpen ())
		m_pSet.Close ();
	m_pSet.Open (AFX_DB_USE_DEFAULT_TYPE,L"Select * from Person order by pName");
	CString Old_Type=L"";//用于保存旧的类型
	if(m_pSet.GetRecordCount ()==0)//如果该数据表为空,则不用显示
	{
		m_pSet.Close ();
		return TRUE;
	}
	m_pSet.MoveFirst ();
	while (!m_pSet.IsEOF ())
	{
		if(Old_Type==(CString)m_pSet.m_pName )
		{
			m_pSet.MoveNext ();//若相等,则说明还是那个,则跳过
			continue;
		}
		Old_Type=m_pSet.m_pName  ;
		m_cOtherName.AddString (Old_Type);//若不同,则说明是新的类型,则添加
		m_pSet.MoveNext ();
	}
	m_pSet.Close ();
	return TRUE;  // return TRUE unless you set the focus to a control
	// 异常: OCX 属性页应返回 FALSE
}

HBRUSH CFinanceBorrowAddDlg::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor)
{
	HBRUSH hbr = CDialog::OnCtlColor(pDC, pWnd, nCtlColor);

	// TODO:  在此更改 DC 的任何属性
	if(m_bColor)//如果用系统的,则直接返回
		return hbr;
	pDC->SetTextColor (m_RGB_CtrlColor);
	pDC->SetBkMode(BKMODE_LAST);pDC->SetBkColor (m_RGB_BkColor);
	return (HBRUSH)m_brush.GetSafeHandle ();
	// TODO:  如果默认的不是所需画笔,则返回另一个画笔
//	return hbr;
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?