📄 odbcdialog.cpp
字号:
// odbcdialog.cpp : implementation file
//
#include "stdafx.h"
#include "winmainlast.h"
#include "odbcdialog.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
/////////////////////////////////////////////////////////////////////////////
// odbcdialog dialog
odbcdialog::odbcdialog(CWnd* pParent /*=NULL*/)
: CDialog(odbcdialog::IDD, pParent)
{
//{{AFX_DATA_INIT(odbcdialog)
m_adress = _T("");
m_money1 = 0.0f;
m_money2 = 0.0f;
m_moneytotal = 0.0f;
m_name = _T("");
m_no = _T("");
//}}AFX_DATA_INIT
}
void odbcdialog::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
//{{AFX_DATA_MAP(odbcdialog)
DDX_Control(pDX, IDC_LIST1, m_list);
DDX_Text(pDX, IDC_adress, m_adress);
DDX_Text(pDX, IDC_money1, m_money1);
DDX_Text(pDX, IDC_money2, m_money2);
DDX_Text(pDX, IDC_moneytotal, m_moneytotal);
DDX_Text(pDX, IDC_name, m_name);
DDX_Text(pDX, IDC_no, m_no);
//}}AFX_DATA_MAP
}
BEGIN_MESSAGE_MAP(odbcdialog, CDialog)
//{{AFX_MSG_MAP(odbcdialog)
ON_NOTIFY(NM_DBLCLK, IDC_LIST1, OnDblclkList1)
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
/////////////////////////////////////////////////////////////////////////////
// odbcdialog message handlers
BOOL odbcdialog::OnInitDialog()
{
CDialog::OnInitDialog();
m_db.OpenEx("dsn=winmainlast;uid=sa;pwd=2222");
m_list.InsertColumn((short)0,"编号",LVCFMT_CENTER,50);
m_list.InsertColumn(1,"姓名",LVCFMT_CENTER,60);
m_list.InsertColumn(2,"工资1",LVCFMT_CENTER,80);
m_list.InsertColumn(3,"工资2",LVCFMT_CENTER,80);
m_list.InsertColumn(4,"总工资",LVCFMT_CENTER,80);
m_list.InsertColumn(5,"家庭住址",LVCFMT_CENTER,150);
CRecordset m_set;
m_set.m_pDatabase=&m_db;
m_set.Open(CRecordset::dynaset,"select * from 员工表");
m_set.MoveFirst();
m_set.GetFieldValue((short)0,m_no);
m_set.GetFieldValue(1,m_name);
CDBVariant money1,money2,moneytotal;
m_set.GetFieldValue(2,money1);
m_money1=(float)money1.m_dblVal;
m_set.GetFieldValue(3,money2);
m_money2=(float)money2.m_dblVal;
m_set.GetFieldValue(4,moneytotal);
m_moneytotal=(float)moneytotal.m_dblVal;
m_set.GetFieldValue(5,m_adress);
UpdateData(false);
m_set.MoveFirst();
CString str,str1;
while(!m_set.IsEOF())
{
m_set.GetFieldValue((short)0,str);
str.TrimRight();
int index=m_list.GetItemCount();
int index2=m_list.InsertItem(index,str);
m_set.GetFieldValue(1,str);
str.TrimRight();
m_list.SetItemText(index2,1,str);
CDBVariant var1;
m_set.GetFieldValue(2,var1);
str.Format("%6.2f",(float)var1.m_dblVal);
str.TrimRight();
m_list.SetItemText(index2,2,str);
m_set.GetFieldValue(3,var1);
str.Format("%6.2f",(float)var1.m_dblVal);
str.TrimRight();
m_list.SetItemText(index2,3,str);
m_set.GetFieldValue(4,var1);
str.Format("%6.2f",(float)var1.m_dblVal);
str.TrimRight();
m_list.SetItemText(index2,4,str);
m_set.GetFieldValue(5,str);
str.TrimRight();
m_list.SetItemText(index2,5,str);
//m_set.GetFieldValue(3,var2);
//m_set.GetFieldValue(4,var3);
//m_set.GetFieldValue(5,str);
m_set.MoveNext();
}
m_set.Close();
return TRUE; // return TRUE unless you set the focus to a control
// EXCEPTION: OCX Property Pages should return FALSE
}
void odbcdialog::OnOK()
{
//CDialog::OnOK();
}
void odbcdialog::OnDblclkList1(NMHDR* pNMHDR, LRESULT* pResult)
{
CString str,str1;
//POSITION pos;
int index=m_list.GetNextItem(-1,LVNI_SELECTED);
//int index=m_list.GetNextSelectedItem(pos);
str=m_list.GetItemText(index,2);
str1.Format("%d",index);
str1=str+str1;
AfxMessageBox(str1);
*pResult = 0;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -