⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 mydlg.cpp

📁 VC++6.0实现连接数据库,用了两种方法,供大家参考
💻 CPP
字号:
// MyDlg.cpp : implementation file
//

#include "stdafx.h"
#include "ADOTEST.h"
#include "MyDlg.h"
#include "ADOTESTView.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif

/////////////////////////////////////////////////////////////////////////////
// CMyDlg dialog

extern _RecordsetPtr p_Record;
extern _ConnectionPtr p_Con;
CMyDlg::CMyDlg(CWnd* pParent /*=NULL*/)
	: CDialog(CMyDlg::IDD, pParent)
{
	//{{AFX_DATA_INIT(CMyDlg)
		// NOTE: the ClassWizard will add member initialization here
	//}}AFX_DATA_INIT
}


void CMyDlg::DoDataExchange(CDataExchange* pDX)
{
	CDialog::DoDataExchange(pDX);
	//{{AFX_DATA_MAP(CMyDlg)
	DDX_Control(pDX, IDC_LIST1, m_List);
	//}}AFX_DATA_MAP
}


BEGIN_MESSAGE_MAP(CMyDlg, CDialog)
	//{{AFX_MSG_MAP(CMyDlg)
	//}}AFX_MSG_MAP
END_MESSAGE_MAP()



BOOL CMyDlg::OnInitDialog() 
{
	CDialog::OnInitDialog();
	/*LV_COLUMN lvc;
	LV_ITEM lvi; 
	char  *display2[3][3]={"1","01","75","2","02 ","84 ","3","03 ","67 "};
	char  *display[4]={"订单号","起始时间","结束时间","内容"};
	char  *display1[3]={"张三","李四","王麻子"};
	lvc.mask=LVCF_FMT|LVCF_TEXT|LVCF_SUBITEM|LVCF_WIDTH;
	lvc.fmt=LVCFMT_LEFT;
	lvc.cx=111;

	for(int i=0;i<4;i++)
	{
		lvc.iSubItem=i;
		lvc.pszText=display[i];//{"订单号","起始时间","结束时间","内容"};
		m_List.InsertColumn(i,&lvc);
	}

	lvi.mask=LVIF_TEXT;
	lvi.iSubItem=0;
	for( i=0;i<3;i++) 
	{
		lvi.pszText=display1[i];
		lvi.iItem=i;
		m_List.InsertItem(&lvi);
	for(int j=1;j<3;j++)
			m_List.SetItemText(i,j,display2[i][j]);//{"1","01","75","2","02 ","84 ","3","03 ","67 "};
	}
   */
	m_List.SetExtendedStyle(LVS_EX_FLATSB |LVS_EX_TRACKSELECT|LVS_EX_FULLROWSELECT |LVS_EX_GRIDLINES);
	m_List.InsertColumn(0,"订单号",LVCFMT_LEFT,100);
	m_List.InsertColumn(1,"起始时间",LVCFMT_LEFT,80);
	m_List.InsertColumn(2,"结束时间",LVCFMT_LEFT,80);
	m_List.InsertColumn(3,"内容",LVCFMT_LEFT,80);

	CString sql= "select * from T_Orders";;
	
	
	p_Record->raw_Close();
//	p_Record->Open((_bstr_t)sql,p_Con.GetInterfacePtr(),adOpenKeyset,adLockOptimistic,adCmdText);
	p_Record->Open("select * from T_Orders",
		(IDispatch*)p_Con,
		adOpenDynamic,
		adLockOptimistic,
			adCmdText);
	m_List.DeleteAllItems();
	CString OrderID,OrderStart,OrderEnd,OrderContent;
	int i = 0;
	while (!p_Record->adoEOF)
	{
		m_List.InsertItem(i,"");

		_bstr_t vsb = p_Record->Fields->GetItem("OrderID")->Value;
		OrderID= (LPSTR)vsb;

		_bstr_t vsb1 = p_Record->Fields->GetItem("OrderStart")->Value;
		OrderStart= (LPSTR)vsb1;

		_bstr_t vsb2 = p_Record->Fields->GetItem("OrderEnd")->Value;
		OrderEnd= (LPSTR)vsb2;

		//OrderStart= p_Record->GetFields()->GetItem("OrderStart")->Value.bstrVal;
	//	OrderEnd = p_Record->GetFields()->GetItem("OrderEnd")->Value.bstrVal;
		OrderContent= p_Record->GetFields()->GetItem("OrderContent")->Value.bstrVal;
	

		m_List.SetItemText(i,0,OrderID);
		m_List.SetItemText(i,1,OrderStart);		
		m_List.SetItemText(i,2,OrderEnd);
		m_List.SetItemText(i,3,OrderContent);

		i+=1;
		p_Record->MoveNext();
	}
	return TRUE;  

}

void CMyDlg::OnOK() 
{

	CDialog::OnOK();
/*	CString sql;
	sql = "select * from T_Orders";
	
	p_Record->raw_Close();
//	p_Record->Open((_bstr_t)sql,p_Con.GetInterfacePtr(),adOpenKeyset,adLockOptimistic,adCmdText);
	p_Record->Open("select * from T_Orders",
		(IDispatch*)p_Con,
		adOpenDynamic,
		adLockOptimistic,
			adCmdText);
	m_List.DeleteAllItems();
	CString OrderID,OrderStart,OrderEnd,OrderContent;
	int i = 0;
	while (!p_Record->adoEOF)
	{
		m_List.InsertItem(i,"");
		_bstr_t vsb = p_Record->Fields->GetItem("OrderID")->Value;
		OrderID= (LPSTR)vsb;
			TRACE("%s\n",vsb);
	OrderStart= p_Record->GetFields()->GetItem("OrderStart")->Value.bstrVal;
		OrderEnd = p_Record->GetFields()->GetItem("OrderEnd")->Value.bstrVal;
		OrderContent= p_Record->GetFields()->GetItem("OrderContent")->Value.bstrVal;
	

		m_List.SetItemText(i,0,OrderID);
		m_List.SetItemText(i,1,OrderStart);		
		m_List.SetItemText(i,2,OrderEnd);
		m_List.SetItemText(i,3,OrderContent);
	
		i+=1;
		p_Record->MoveNext();
	}
*/
	CMyDlg *dlg;
	dlg=new CMyDlg();
	dlg->Create(IDD_DIALOG1);
	dlg->ShowWindow(SW_SHOW);
}

void CMyDlg::OnCancel() 
{
	// TODO: Add extra cleanup here
	CDialog::OnCancel();
	EndDialog(IDCANCEL);
	delete this;
}

⌨️ 快捷键说明

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