📄 scdlg.cpp
字号:
// SCDLG.cpp : implementation file
//
#include "stdafx.h"
#include "cyj.h"
#include "SCDLG.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
/////////////////////////////////////////////////////////////////////////////
// SCDLG dialog
SCDLG::SCDLG(CWnd* pParent /*=NULL*/)
: CDialog(SCDLG::IDD, pParent)
{
//{{AFX_DATA_INIT(SCDLG)
m_cno = _T("");
m_grade = 0;
m_sno = _T("");
//}}AFX_DATA_INIT
}
void SCDLG::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
//{{AFX_DATA_MAP(SCDLG)
DDX_Control(pDX, IDC_LIST1, m_list);
DDX_Text(pDX, IDC_CNO, m_cno);
DDX_Text(pDX, IDC_GRADE, m_grade);
DDX_Text(pDX, IDC_SNO, m_sno);
//}}AFX_DATA_MAP
}
BEGIN_MESSAGE_MAP(SCDLG, CDialog)
//{{AFX_MSG_MAP(SCDLG)
ON_BN_CLICKED(IDC_MODIFY, OnModify)
ON_NOTIFY(LVN_ITEMCHANGED, IDC_LIST1, OnItemchangedList1)
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
/////////////////////////////////////////////////////////////////////////////
// SCDLG message handlers
BOOL SCDLG::OnInitDialog()
{
CDialog::OnInitDialog();
m_list.SetExtendedStyle(LVS_EX_GRIDLINES|LVS_EX_FULLROWSELECT);
m_list.InsertColumn(0,"SNO",LVCFMT_CENTER,80);
m_list.InsertColumn(1,"CNO",LVCFMT_CENTER,80);
m_list.InsertColumn(2,"GRADE",LVCFMT_CENTER,80);
pdb=new CDatabase;
pdb->Open("ODBC;DSN=cyj");
m_pset=new SCSET(pdb);
if(showallflag)
str.Format("select *from sc where sno='%s'",m_sno);
else
str="select * from sc";
m_pset->Open(AFX_DB_USE_DEFAULT_TYPE,str);
LoadData();
return TRUE; // return TRUE unless you set the focus to a control
// EXCEPTION: OCX Property Pages should return FALSE
}
void SCDLG::OnModify()
{UpdateData();
CString str;
try
{
str.Format("update sc set grade=%d where sno='%s' and cno='%s'", m_grade,m_sno,m_cno);
pdb->ExecuteSQL(str);
m_pset->Requery();
LoadData();
}
catch(...)
{
return ; }
}
void SCDLG::OnItemchangedList1(NMHDR* pNMHDR, LRESULT* pResult)
{
NM_LISTVIEW* pNMListView = (NM_LISTVIEW*)pNMHDR;
int selectrow=pNMListView->iItem;
m_sno=m_list.GetItemText(selectrow,0);
m_cno=m_list.GetItemText(selectrow,1);
m_grade=atoi(m_list.GetItemText(selectrow,2));
UpdateData(FALSE);
*pResult = 0;
}
void SCDLG::LoadData()
{ m_list.DeleteAllItems();
int i=0;
while(!m_pset->IsEOF())
{
CString str1;
str1.Format("%d",m_pset->m_grade);
m_list.InsertItem(i,m_pset->m_sno);
m_list.SetItemText(i,1,m_pset->m_cno);
m_list.SetItemText(i,2,str1);
i++;
m_pset->MoveNext();
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -