?? show.cpp
字號:
// Show.cpp : implementation file
//
#include "stdafx.h"
#include "倉庫管理系統.h"
#include "Show.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
extern CDatabase m_database;
extern CAddMaterial* adddlg;
extern CMainDlg* MainDlg;
extern CSearchMaterial* searchdlg;
/////////////////////////////////////////////////////////////////////////////
// CShow dialog
CShow::CShow(CWnd* pParent /*=NULL*/)
: CDialog(CShow::IDD, pParent)
{
//{{AFX_DATA_INIT(CShow)
//}}AFX_DATA_INIT
}
void CShow::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
//{{AFX_DATA_MAP(CShow)
DDX_Control(pDX, IDC_LIST1, m_List);
//}}AFX_DATA_MAP
}
BEGIN_MESSAGE_MAP(CShow, CDialog)
//{{AFX_MSG_MAP(CShow)
ON_BN_CLICKED(IDC_BUTTON5, OnButton5)
ON_BN_CLICKED(IDC_BUTTON1, OnButton1)
ON_BN_CLICKED(IDC_BUTTON2, OnButton2)
ON_WM_CLOSE()
ON_BN_CLICKED(IDC_BUTTON3, OnButton3)
ON_BN_CLICKED(IDC_BUTTON4, OnButton4)
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
/////////////////////////////////////////////////////////////////////////////
// CShow message handlers
BOOL CShow::OnInitDialog()
{
CDialog::OnInitDialog();
m_List.InsertColumn(0,"物資號");
m_List.InsertColumn(1,"物資名");
m_List.InsertColumn(2,"數量");
m_List.InsertColumn(3,"備注");
CRect r;
m_List.GetWindowRect(&r);
int wid=r.Width();//取得List Control控件寬度
for(int i=0;i<14;i++){
m_List.SetColumnWidth(i,wid/3);//每個屬性分配三分之一的寬度
}
//設置List Control控件屬性,使其具有類似Excel的網格樣式
m_List.SetExtendedStyle(LVS_EX_FULLROWSELECT|LVS_EX_GRIDLINES);
return TRUE; // return TRUE unless you set the focus to a control
// EXCEPTION: OCX Property Pages should return FALSE
}
void CShow::OnButton5()
{
MainDlg->ShowWindow(SW_SHOW);
ShowWindow(SW_HIDE);
}
void CShow::OnRefreshData(CString sql){
CString str;
m_List.DeleteAllItems();
CMessSet m_messset;
char buf[100];
m_messset.m_pDatabase=&m_database;
m_messset.Open(AFX_DB_USE_DEFAULT_TYPE,sql);
//m_messset.MoveFirst();
int i=0;
while(!m_messset.IsEOF()){
while(m_messset.IsDeleted()){
m_messset.MoveNext();
}
str=itoa(m_messset.m_column1,buf,10);
str.TrimRight();
m_List.InsertItem(i,str);
str=m_messset.m_column2;
str.TrimRight();
m_List.SetItemText(i,1,str);
str.Format("%d",m_messset.m_column3);
m_List.SetItemText(i,2,str);
str=m_messset.m_column4;
str.TrimRight();
m_List.SetItemText(i,3,str);
m_messset.MoveNext();
}
}
void CShow::OnButton1()
{
adddlg->isupdate=false;
adddlg->ShowWindow(SW_SHOW);
}
void CShow::OnButton2()
{
CString sql;
CString item;
int index=-1;
char buf[100];
if (m_List.GetNextItem(index,LVNI_SELECTED) == -1){
MessageBox("請先選中一條記錄");
return;
}
int num;
int preindex=-1;
//刪除List Control控件中選中的記錄。
while ((index = m_List.GetNextItem(preindex,LVNI_SELECTED)) != -1) {
item=m_List.GetItemText(index,0);//從選中的記錄中獲取用戶名
try{
//生成刪除用戶的SQL語句
sql.Format("delete from 物資表 where 物資號='%s'",item);
m_database.ExecuteSQL(sql);
}
catch(CDBException e1){
AfxMessageBox("數據庫操作失敗");
}
catch(CMemoryException e2){
AfxMessageBox("數據庫操作失敗");
}
preindex=index;
}
//更新顯示數據
sql="select * from 物資表 order by 物資號";
this->OnRefreshData(sql);
OnPaint();
}
void CShow::OnClose()
{
// TODO: Add your message handler code here and/or call default
if(MessageBox("確定退出系統1?","提醒",MB_YESNO|MB_DEFBUTTON2|MB_ICONQUESTION)!=IDNO){
exit(0);
}
}
void CShow::OnButton3()
{
CString sql;
CString item;
int index=-1;
char buf[100];
if (index=m_List.GetNextItem(index,LVNI_SELECTED) == -1){
MessageBox("請先選中一條記錄");
return;
}
int preindex=-1;
while ((index = m_List.GetNextItem(preindex,LVNI_SELECTED)) != -1) {
adddlg->itemnum=m_List.GetItemText(index,0);
adddlg->m_name=m_List.GetItemText(index,1);
adddlg->m_num=atoi(m_List.GetItemText(index,2));
adddlg->m_mark=m_List.GetItemText(index,3);
adddlg->isupdate=true;
adddlg->UpdateData(FALSE);
adddlg->ShowWindow(SW_SHOW);
preindex=index;
break;
}
}
void CShow::OnButton4()
{
searchdlg->ShowWindow(SW_SHOW);
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -