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

📄 storagequerydlg.cpp

📁 只是老师布置的一个作业而已。VC下编写的加油站系统
💻 CPP
字号:
// StorageQueryDlg.cpp : implementation file
//

#include "stdafx.h"
#include "gasstation.h"
#include "StorageQueryDlg.h"

#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif

/////////////////////////////////////////////////////////////////////////////
// CStorageQueryDlg dialog


CStorageQueryDlg::CStorageQueryDlg(CWnd* pParent /*=NULL*/)
	: CDialog(CStorageQueryDlg::IDD, pParent)
{
	//{{AFX_DATA_INIT(CStorageQueryDlg)
	m_strDepot = _T("");
	m_strGasType = _T("");
	//}}AFX_DATA_INIT
}


void CStorageQueryDlg::DoDataExchange(CDataExchange* pDX)
{
	CDialog::DoDataExchange(pDX);
	//{{AFX_DATA_MAP(CStorageQueryDlg)
	DDX_Control(pDX, IDC_COMBO_GAS_TYPE, m_cbGasType);
	DDX_Control(pDX, IDC_COMBO_DEPOT, m_cbDepot);
	DDX_Control(pDX, IDC_LIST_STORAGE, m_listStorage);
	DDX_CBString(pDX, IDC_COMBO_DEPOT, m_strDepot);
	DDX_CBString(pDX, IDC_COMBO_GAS_TYPE, m_strGasType);
	//}}AFX_DATA_MAP
}


BEGIN_MESSAGE_MAP(CStorageQueryDlg, CDialog)
	//{{AFX_MSG_MAP(CStorageQueryDlg)
	ON_WM_SHOWWINDOW()
	ON_CBN_SELCHANGE(IDC_COMBO_DEPOT, OnSelchangeComboDepot)
	ON_CBN_SELCHANGE(IDC_COMBO_GAS_TYPE, OnSelchangeComboGasType)
	//}}AFX_MSG_MAP
END_MESSAGE_MAP()

/////////////////////////////////////////////////////////////////////////////
// CStorageQueryDlg message handlers

BOOL CStorageQueryDlg::OnInitDialog() 
{
	CDialog::OnInitDialog();
	
	//设置列表框控件
	const char *list_column[] = 
	{
		"油库",
		"油品",
		"储量",
		""
	};
	int i=0;
	while (*list_column[i] != 0x00) {
		m_listStorage.InsertColumn(i, list_column[i++], LVCFMT_LEFT, 100);
	}
	m_listStorage.SetExtendedStyle(LVS_EX_FULLROWSELECT);
	
	return TRUE;  // return TRUE unless you set the focus to a control
	              // EXCEPTION: OCX Property Pages should return FALSE
}

void CStorageQueryDlg::OnShowWindow(BOOL bShow, UINT nStatus) 
{
	CDialog::OnShowWindow(bShow, nStatus);
	
	// TODO: Add your message handler code here

	m_strDepot = "全部";
	m_strGasType = "全部";
	UpdateData(FALSE);
	
	RefreshList();

	static BOOL bFirstShow = TRUE;

	if (!bFirstShow)
		return ;
	bFirstShow = FALSE;

	CStringArray strName, strTemp;

	ADOSQLServer.GetDepots(strTemp, strName, strTemp, strTemp);
	for (int i=0;i<strName.GetSize();i ++) {
		m_cbDepot.AddString(strName.GetAt(i));
	}
	strName.RemoveAll();
	ADOSQLServer.GetGasTypes(strTemp, strName, strTemp);
	for (i=0;i<strName.GetSize();i ++) {
		m_cbGasType.AddString(strName.GetAt(i));
	}
}

void CStorageQueryDlg::RefreshList()
{
	UpdateData();

	m_listStorage.DeleteAllItems();
	CStringArray strDepotName, strGasTypeName, strAmount;
	ADOSQLServer.GetStorages(m_strDepot, m_strGasType, strDepotName, strGasTypeName, strAmount);
	for (int i=0;i<strDepotName.GetSize();i ++) {
		int nItem = m_listStorage.GetItemCount();
		m_listStorage.InsertItem(nItem, strDepotName.GetAt(i));
		m_listStorage.SetItemText(nItem, 1, strGasTypeName.GetAt(i));
		m_listStorage.SetItemText(nItem, 2, strAmount.GetAt(i));
	}
}

void CStorageQueryDlg::OnSelchangeComboDepot() 
{
	// TODO: Add your control notification handler code here
	RefreshList();
}

void CStorageQueryDlg::OnSelchangeComboGasType() 
{
	// TODO: Add your control notification handler code here
	RefreshList();
}

⌨️ 快捷键说明

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