gusucode.com > ADO智能开发包C++源码程序 > ADO智能开发包/sfxdb_src_1.0.510.1/sfx/Examples/AdoControl/TestControlPage.cpp
/******************************************************* 《ADO智能组件》演示程序 版权所有(c) 2004-2005 许松森保留所有权力。 有关最新信息请访问 http://www.willspace.net 站 点,电子信箱 ytf1978#163.com(#号换为@号) ********************************************************/ // TestControlPage.cpp : implementation file // #include "stdafx.h" #include "AdoControl.h" #include "TestControlPage.h" #include "TestMainDlg.h" // CTestControlPage dialog IMPLEMENT_DYNAMIC(CTestControlPage, CPropertyPage) CTestControlPage::CTestControlPage() : CPropertyPage(CTestControlPage::IDD) { } CTestControlPage::~CTestControlPage() { } void CTestControlPage::DoDataExchange(CDataExchange* pDX) { CPropertyPage::DoDataExchange(pDX); DDX_Control(pDX, IDC_EDIT_NAME, m_EditName); DDX_Control(pDX, IDC_COMBO_ATT, m_DBComBoBoxAtt); DDX_Control(pDX, IDC_COMBO_AGE, m_DBComBoAge); DDX_Control(pDX, IDC_EDIT_TEL, m_DBEditTel); DDX_Control(pDX, IDC_EDIT_MOBILE, m_DBEditMoble); DDX_Control(pDX, IDC_EDIT_EMAIL, m_DBEditEmail); DDX_Control(pDX, IDC_EDIT_CORP, m_DBEditCorp); DDX_Control(pDX, IDC_EDIT_ADDRESS, m_DBEditAddress); DDX_Control(pDX, IDC_COMBO_POSITION, m_DBComBoPosition); DDX_Control(pDX, IDC_EDIT_SCHOOL, m_DBEditSchool); DDX_Control(pDX, IDC_COMBO_SPE, m_DBComBoSpe); DDX_Control(pDX, IDC_EDIT_MON, m_DBEditMon); DDX_Control(pDX, IDC_CHECK_MARR, m_DBCheckMarr); DDX_Control(pDX, IDC_RICHEDIT_FORMAT, m_DBRichEdit); DDX_Control(pDX, IDC_EDIT_MEMO, m_DBEditMemo); DDX_Control(pDX, IDC_CUSTOM_IMAGE, m_DBImage); DDX_Control(pDX, IDC_DATETIMEPICKER1, m_DBDateTime); DDX_Control(pDX, IDC_COMBO_SEX, m_DBComboSex); } BEGIN_MESSAGE_MAP(CTestControlPage, CPropertyPage) ON_BN_CLICKED(IDC_CHECK_SHOW_IMAGE, OnBnClickedCheck1) END_MESSAGE_MAP() void CTestControlPage::InitDataControl() { #define FIELDNAME_LEN 25 typedef struct tagDBCONTROLINFO { CDBBaseControl *pWnd; LPTSTR lpszFieldName;//[FIELDNAME_LEN]; }DBCONTROLINFO; try { CTestMainDlg *pParent = (CTestMainDlg*)theApp.m_pMainWnd; DBCONTROLINFO dbControlInfo[] = { {(CDBBaseControl*)&m_EditName, _T("姓名")}, {(CDBBaseControl*)&m_DBComBoBoxAtt, _T("属相")}, {(CDBBaseControl*)&m_DBComboSex, _T("性别")}, {(CDBBaseControl*)&m_DBComBoAge, _T("年龄")}, {(CDBBaseControl*)&m_DBEditTel, _T("电话")}, {(CDBBaseControl*)&m_DBEditMoble, _T("手机")}, {(CDBBaseControl*)&m_DBEditEmail, _T("电子信箱")}, {(CDBBaseControl*)&m_DBEditCorp, _T("公司")}, {(CDBBaseControl*)&m_DBEditAddress, _T("地址")}, {(CDBBaseControl*)&m_DBComBoPosition, _T("职位")}, {(CDBBaseControl*)&m_DBEditSchool, _T("毕业院校")}, {(CDBBaseControl*)&m_DBComBoSpe, _T("专业")}, {(CDBBaseControl*)&m_DBEditMon, _T("月薪")}, {(CDBBaseControl*)&m_DBCheckMarr, _T("结婚")}, {(CDBBaseControl*)&m_DBRichEdit, _T("格式文本备注")}, {(CDBBaseControl*)&m_DBImage, _T("照片")}, {(CDBBaseControl*)&m_DBEditMemo, _T("文本备注")}, {(CDBBaseControl*)&m_DBDateTime, _T("出生日期")} }; CDBBaseControl *pDBBase = NULL; for (int iItem=0; iItem<sizeof(dbControlInfo)/sizeof(DBCONTROLINFO); iItem++) { pDBBase = dbControlInfo[iItem].pWnd; pDBBase->SetAdoRecordset(pParent->GetAdoRecordset()); pDBBase->SetFieldName((LPCTSTR)dbControlInfo[iItem].lpszFieldName); } }catch (TException &exc) { MessageBox(exc.m_Message); } } // CTestControlPage message handlers BOOL CTestControlPage::OnInitDialog() { CPropertyPage::OnInitDialog(); InitDataControl(); InitControlData(); if (m_DBImage.GetPictureShow()) { ::CheckDlgButton(m_hWnd, IDC_CHECK_SHOW_IMAGE, BST_CHECKED); }else { ::CheckDlgButton(m_hWnd, IDC_CHECK_SHOW_IMAGE, BST_UNCHECKED); } return TRUE; } void CTestControlPage::OnBnClickedCheck1() { if (::IsDlgButtonChecked(m_hWnd, IDC_CHECK_SHOW_IMAGE)&BST_CHECKED) { m_DBImage.SetPictureShow(true); }else { m_DBImage.SetPictureShow(false); } } BOOL WINAPI ComboBox_AddNum(HWND hWnd, int nBegin, int nEnd) { CString m_test; if (NULL != hWnd) { for (int iIndex=nBegin; iIndex<nEnd; iIndex++) { m_test.Format(_T("%d"), iIndex); ::SendMessage(hWnd, CB_ADDSTRING, 0, (LPARAM)(LPCTSTR)m_test); } return TRUE; } return FALSE; } // 初始化控件中的可选择的数据项。 void CTestControlPage::InitControlData(void) { m_DBComboSex.AddString(_T("男")); m_DBComboSex.AddString(_T("女")); m_DBComBoBoxAtt.AddString(_T("鼠")); m_DBComBoBoxAtt.AddString(_T("牛")); m_DBComBoBoxAtt.AddString(_T("虎")); m_DBComBoBoxAtt.AddString(_T("兔")); m_DBComBoBoxAtt.AddString(_T("龙")); m_DBComBoBoxAtt.AddString(_T("蛇")); m_DBComBoBoxAtt.AddString(_T("马")); m_DBComBoBoxAtt.AddString(_T("羊")); m_DBComBoBoxAtt.AddString(_T("猴")); m_DBComBoBoxAtt.AddString(_T("鸡")); m_DBComBoBoxAtt.AddString(_T("狗")); m_DBComBoBoxAtt.AddString(_T("猪")); VERIFY(ComboBox_AddNum(m_DBComBoAge.m_hWnd, 1, 100)); }