www.gusucode.com > VC++开发的ACD树形策略编辑器-源码程序 > VC++开发的ACD树形策略编辑器-源码程序/code/DBConnection.cpp
//Download by http://www.NewXing.com // DBConnection.cpp : implementation file // #include "stdafx.h" #include "dsACD_IVR.h" #include "DBConnection.h" #include "dsACD_IVRDoc.h" #include "dsACD_IVRView.h" #ifdef _DEBUG #define new DEBUG_NEW #undef THIS_FILE static char THIS_FILE[] = __FILE__; #endif ///////////////////////////////////////////////////////////////////////////// // CDBConnection dialog CDBConnection::CDBConnection(CWnd* pParent /*=NULL*/) : CDialog(CDBConnection::IDD, pParent) { //{{AFX_DATA_INIT(CDBConnection) m_csType = _T(""); m_csComment = _T(""); m_csContent = _T(""); m_csLink = _T(""); m_csName = _T(""); //}}AFX_DATA_INIT } void CDBConnection::DoDataExchange(CDataExchange* pDX) { CDialog::DoDataExchange(pDX); //{{AFX_DATA_MAP(CDBConnection) DDX_CBString(pDX, IDC_CONN_CMDTYPE, m_csType); DDX_Text(pDX, IDC_CONN_COMMENT, m_csComment); DDX_Text(pDX, IDC_CONN_CONTENT, m_csContent); DDX_Text(pDX, IDC_CONN_LINK, m_csLink); DDX_Text(pDX, IDC_CONN_NAME, m_csName); //}}AFX_DATA_MAP } BEGIN_MESSAGE_MAP(CDBConnection, CDialog) //{{AFX_MSG_MAP(CDBConnection) ON_BN_CLICKED(IDC_BUTTON_CONN, OnButtonConn) ON_BN_CLICKED(IDC_BUTTON_FILE, OnButtonFile) //}}AFX_MSG_MAP END_MESSAGE_MAP() ///////////////////////////////////////////////////////////////////////////// // CDBConnection message handlers BOOL CDBConnection::OnInitDialog() { CDialog::OnInitDialog(); m_pDBConnection=(CDialog *)GetDlgItem(IDD_DBCONNECTION); CComboBox *pCmdType=(CComboBox *)GetDlgItem(IDC_CONN_CMDTYPE); int nIndex = pCmdType->SelectString(-1, m_csType); pCmdType->SetCurSel(nIndex); return TRUE; // return TRUE unless you set the focus to a control // EXCEPTION: OCX Property Pages should return FALSE } void CDBConnection::DisplayDlg(dsACDObjectBase *pObj) { dsDBConn_INFO * pInfo = (dsDBConn_INFO*) pObj->Read(); m_csName = pInfo->Name; m_csLink = pInfo->Link; m_csType = pInfo->Type; if (pInfo->Content == "空") m_csContent = ""; else m_csContent = pInfo->Content; m_csComment = pInfo->Comment; if(DoModal()==IDOK) { pInfo->Name = m_csName; pInfo->Link = m_csLink; pInfo->Type = m_csType; if (m_csContent == "") pInfo->Content = "空"; else pInfo->Content = m_csContent; pInfo->Comment = m_csComment; } else return; } void CDBConnection::OnOK() { UpdateData(TRUE); if(m_csName.IsEmpty()) { AfxMessageBox("名字不能空"); return ; } CDialog::OnOK(); } void CDBConnection::OnButtonConn() { g_DataSource.Open((HWND)m_pDBConnection, DBPROMPTOPTIONS_WIZARDSHEET); BSTR tmpBStr; g_DataSource.GetInitializationString( &tmpBStr); m_csLink =_com_util::ConvertBSTRToString(tmpBStr); UpdateData(FALSE); } void CDBConnection::OnButtonFile() { g_DataSource.OpenWithPromptFileName((HWND)m_pDBConnection, DBPROMPTOPTIONS_NONE, NULL); BSTR tmpBStr; g_DataSource.GetInitializationString( &tmpBStr); m_csLink =_com_util::ConvertBSTRToString(tmpBStr); UpdateData(FALSE); }