📄 askstatedialog.cpp
字号:
// AskstateDialog.cpp : implementation file
//
#include "stdafx.h"
#include "tot.h"
#include "AskstateDialog.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
/////////////////////////////////////////////////////////////////////////////
// CAskstateDialog dialog
CAskstateDialog::CAskstateDialog(CWnd* pParent /*=NULL*/)
: CDialog(CAskstateDialog::IDD, pParent)
{
//{{AFX_DATA_INIT(CAskstateDialog)
// NOTE: the ClassWizard will add member initialization here
//}}AFX_DATA_INIT
if(!m_dab.Open(NULL,FALSE,FALSE,"ODBC;DSN=Room"))
{AfxMessageBox("不能打开数据库");}
}
void CAskstateDialog::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
//{{AFX_DATA_MAP(CAskstateDialog)
DDX_Control(pDX, IDC_LIST1, m_ListCtrl);
//}}AFX_DATA_MAP
}
BEGIN_MESSAGE_MAP(CAskstateDialog, CDialog)
//{{AFX_MSG_MAP(CAskstateDialog)
ON_BN_CLICKED(IDC_ASKSTATE, OnAskstate)
ON_NOTIFY(LVN_COLUMNCLICK, IDC_LIST1, OnColumnclickList1)
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
/////////////////////////////////////////////////////////////////////////////
// CAskstateDialog message handlers
void CAskstateDialog::OnAskstate()
{
// TODO: Add your control notification handler code here
m_pSet.Open();
m_ListCtrl.SetExtendedStyle(LVS_EX_FULLROWSELECT|LVS_EX_GRIDLINES);
m_ListCtrl.InsertColumn(0,_T("房间号"),LVCFMT_IMAGE|LVCFMT_LEFT);
m_ListCtrl.InsertColumn(1,_T("姓名"));
m_ListCtrl.InsertColumn(2,_T("身份证号"));
m_ListCtrl.InsertColumn(3,_T("性别"));
m_ListCtrl.InsertColumn(4,_T("入住时间"));
m_ListCtrl.InsertColumn(5,_T("住宿天数"));
m_ListCtrl.InsertColumn(6,_T("费用"));
m_ListCtrl.InsertColumn(7,_T("房间级别"));
m_ListCtrl.InsertColumn(8,_T("备注"));
m_ListCtrl.InsertColumn(9,_T("总人数"));
int j;
for(j=0;j<10;j++)
{
m_ListCtrl.SetColumnWidth(j ,90);
}
//显示所有记录
int i=0;
m_pSet.MoveFirst();
do
{
CString s;
s.Format("%d",m_pSet.m_roomID);
m_ListCtrl.InsertItem(i,s,0);
m_ListCtrl.SetItemText(i,1,m_pSet.m_name);
m_ListCtrl.SetItemText(i,2,m_pSet.m_personID);
m_ListCtrl.SetItemText(i,3,m_pSet.m_sex);
s=m_pSet.m_logtime.Format("%Y-%B-%d");
m_ListCtrl.SetItemText(i,4,s);
s.Format("%d",m_pSet.m_day);
m_ListCtrl.SetItemText(i,5,s);
s.Format("%d",m_pSet.m_cost);
m_ListCtrl.SetItemText(i,6,s);
m_ListCtrl.SetItemText(i,7,m_pSet.m_class);
m_ListCtrl.SetItemText(i,8,m_pSet.m_information);
s.Format("%d",m_pSet.m_people);
m_ListCtrl.SetItemText(i,9,s);
i++;
m_pSet.MoveNext();
} while(!m_pSet.IsEOF());
m_pSet.MoveFirst();
m_pSet.Close();
}
void CAskstateDialog::OnColumnclickList1(NMHDR* pNMHDR, LRESULT* pResult)
{
NM_LISTVIEW* pNMListView = (NM_LISTVIEW*)pNMHDR;
// TODO: Add your control notification handler code here
int k=pNMListView->iSubItem;
Sort(!m_bIsAsc,k);
m_ListCtrl.DeleteAllItems();
//
m_ListCtrl.SetExtendedStyle(LVS_EX_FULLROWSELECT|LVS_EX_GRIDLINES);
m_ListCtrl.InsertColumn(0,_T("房间号"),LVCFMT_IMAGE|LVCFMT_LEFT);
m_ListCtrl.InsertColumn(1,_T("姓名"));
m_ListCtrl.InsertColumn(2,_T("身份证号"));
m_ListCtrl.InsertColumn(3,_T("性别"));
m_ListCtrl.InsertColumn(4,_T("入住时间"));
m_ListCtrl.InsertColumn(5,_T("住宿天数"));
m_ListCtrl.InsertColumn(6,_T("费用"));
m_ListCtrl.InsertColumn(7,_T("房间级别"));
m_ListCtrl.InsertColumn(8,_T("备注"));
m_ListCtrl.InsertColumn(9,_T("总人数"));
int j;
for(j=0;j<10;j++)
{
m_ListCtrl.SetColumnWidth(j ,90);
}
//显示所有记录
int i=0;
m_pSet.MoveFirst();
do
{
CString s;
s.Format("%d",m_pSet.m_roomID);
m_ListCtrl.InsertItem(i,s,0);
m_ListCtrl.SetItemText(i,1,m_pSet.m_name);
m_ListCtrl.SetItemText(i,2,m_pSet.m_personID);
m_ListCtrl.SetItemText(i,3,m_pSet.m_sex);
s=m_pSet.m_logtime.Format("%Y-%B-%d");
m_ListCtrl.SetItemText(i,4,s);
s.Format("%d",m_pSet.m_day);
m_ListCtrl.SetItemText(i,5,s);
s.Format("%d",m_pSet.m_cost);
m_ListCtrl.SetItemText(i,6,s);
m_ListCtrl.SetItemText(i,7,m_pSet.m_class);
m_ListCtrl.SetItemText(i,8,m_pSet.m_information);
s.Format("%d",m_pSet.m_people);
m_ListCtrl.SetItemText(i,9,s);
i++;
m_pSet.MoveNext();
} while(!m_pSet.IsEOF());
m_pSet.Close();
//
*pResult = 0;
}
void CAskstateDialog::Sort(BOOL isAsc, int secol)
{
m_pSet.Open();
CODBCFieldInfo fieldInfo;
m_pSet.GetODBCFieldInfo(secol,fieldInfo);
if(isAsc)
{
m_pSet.m_strSort=fieldInfo.m_strName+" ASC";
m_bIsAsc=TRUE;
}
else
{
m_pSet.m_strSort=fieldInfo.m_strName+" DESC";
m_bIsAsc=FALSE;
}
m_pSet.Requery();
}
//DEL CString CAskstateDialog::Select()
//DEL {
//DEL CString str;
//DEL str.Format("%sRoom",m_Getstring);
//DEL m_pSet.Open(AFX_DB_USE_DEFAULT_TYPE,str);
//DEL
//DEL return m_Getstring;
//DEL }
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -