www.gusucode.com > VC++开发的ACD树形策略编辑器-源码程序 > VC++开发的ACD树形策略编辑器-源码程序/code/GetField.cpp
//Download by http://www.NewXing.com // GetField.cpp : implementation file // #include "stdafx.h" #include "dsACD_IVR.h" #include "GetField.h" #include "dsACD_IVRDoc.h" #include "dsACD_IVRView.h" #ifdef _DEBUG #define new DEBUG_NEW #undef THIS_FILE static char THIS_FILE[] = __FILE__; #endif ///////////////////////////////////////////////////////////////////////////// // CGetField dialog CGetField::CGetField(CWnd* pParent /*=NULL*/) : CDialog(CGetField::IDD, pParent) { //{{AFX_DATA_INIT(CGetField) m_csComment = _T(""); m_csName = _T(""); m_csField = _T(""); m_csVariable = _T(""); //}}AFX_DATA_INIT } void CGetField::DoDataExchange(CDataExchange* pDX) { CDialog::DoDataExchange(pDX); //{{AFX_DATA_MAP(CGetField) DDX_Text(pDX, IDC_FIELD_COMMENT, m_csComment); DDX_CBString(pDX, IDC_FIELD_CONN, m_csName); DDX_CBString(pDX, IDC_FIELD_NAME, m_csField); DDX_CBString(pDX, IDC_FIELD_VARIABLE, m_csVariable); //}}AFX_DATA_MAP } BEGIN_MESSAGE_MAP(CGetField, CDialog) //{{AFX_MSG_MAP(CGetField) //}}AFX_MSG_MAP END_MESSAGE_MAP() ///////////////////////////////////////////////////////////////////////////// // CGetField message handlers BOOL CGetField::OnInitDialog() { CDialog::OnInitDialog(); CComboBox *pName=(CComboBox *)GetDlgItem(IDC_FIELD_CONN); CComboBox *pField=(CComboBox *)GetDlgItem(IDC_FIELD_NAME); CComboBox *pVariable=(CComboBox *)GetDlgItem(IDC_FIELD_VARIABLE); CString buf1, buf2, csVarName, csDBConnName; m_pDsACD_IVRView->ReadVariable(buf1); while (!buf1.IsEmpty()) { csVarName = buf1.Left(buf1.Find(";" )); pField->AddString(csVarName); pVariable->AddString(csVarName); buf1.Delete(0, buf1.Find(";" )+1); } m_pDsACD_IVRView->ReadDBConn(buf2); while (!buf2.IsEmpty()) { csDBConnName = buf2.Left(buf2.Find(";" )); pName->AddString(csDBConnName); buf2.Delete(0, buf2.Find(";" )+1); } int nIndex; nIndex = pName->SelectString(-1, m_csName); pName->SetCurSel(nIndex); nIndex = pField->SelectString(-1, m_csField); pField->SetCurSel(nIndex); nIndex = pVariable->SelectString(-1, m_csVariable); pVariable->SetCurSel(nIndex); return TRUE; // return TRUE unless you set the focus to a control // EXCEPTION: OCX Property Pages should return FALSE } void CGetField::DisplayDlg(dsACDObjectBase *pObj) { dsField_INFO * pInfo = (dsField_INFO*) pObj->Read(); m_csName = pInfo->Name; m_csField = pInfo->Field; m_csVariable = pInfo->Variable; m_csComment = pInfo->Comment; if(DoModal()==IDOK) { if (m_csName == "") m_csName = "无数据库"; if (m_csField == "") m_csField = "空"; if (m_csVariable == "") m_csVariable = "无变量"; pInfo->Name = m_csName; pInfo->Field = m_csField; pInfo->Variable = m_csVariable; pInfo->Comment = m_csComment; } else return; }