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

📄 buseditdlg.cpp

📁 用MFC开发的车站管理查询系统可以添加,修改,删除等
💻 CPP
字号:
// BusEditDlg.cpp : implementation file
//

#include "stdafx.h"
#include "bus.h"
#include "BusEditDlg.h"
# include "BusAddDlg.h"

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

/////////////////////////////////////////////////////////////////////////////
// CBusEditDlg dialog


CBusEditDlg::CBusEditDlg(CWnd* pParent /*=NULL*/)
	: CDialog(CBusEditDlg::IDD, pParent)
{
	//{{AFX_DATA_INIT(CBusEditDlg)
	m_busnum = 0;
	m_bussta = _T("");
	//}}AFX_DATA_INIT
}


void CBusEditDlg::DoDataExchange(CDataExchange* pDX)
{
	CDialog::DoDataExchange(pDX);
	//{{AFX_DATA_MAP(CBusEditDlg)
	DDX_Control(pDX, IDC_EDID_DIALOG_COMBO, m_num);
	DDX_Text(pDX, IDC_BUSNUM_EDIT, m_busnum);
	DDX_Text(pDX, IDC_BUSTA_EDIT, m_bussta);
	//}}AFX_DATA_MAP
}


BEGIN_MESSAGE_MAP(CBusEditDlg, CDialog)
	//{{AFX_MSG_MAP(CBusEditDlg)
	ON_BN_CLICKED(IDC_FIND_BUTTON, OnFindButton)
	//}}AFX_MSG_MAP
END_MESSAGE_MAP()

/////////////////////////////////////////////////////////////////////////////
// CBusEditDlg message handlers

//DEL BOOL CBusEditDlg::OnInitDialog()
//DEL {
//DEL 
//DEL }

BOOL CBusEditDlg::OnInitDialog() 
{
	CDialog::OnInitDialog();
	
	// TODO: Add extra initialization here
	if(!m_database.Open(NULL,FALSE,FALSE,"ODBC;DSN=test1"))//对COMBO的DATA即下拉选项初始化
	{
        AfxMessageBox("Failed to open database");//          把数据库中含有的车次列如DATA;
	}
    m_set.Open(); 
    CString str;
    m_set.MoveFirst();
	while(!m_set.IsEOF())
	{
		str.Format("%ld",m_set.m_bus_number);
		m_num.AddString(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 CBusEditDlg::OnFindButton() 
{
	// TODO: Add your control notification handler code here
	//CString str;
	int i=m_num.GetCurSel();
	m_set.m_strFilter="[bus_station]";//                   WHERE子句
	if(m_set.IsOpen()){
		m_set.Close();
	}
	m_set.Open();
	m_set.MoveFirst();
    for (int j=0;j<i;j++)
	{
	  m_set.MoveNext();
	}
    //str.Format("%ld",m_set.m_bus_number);
    //SetDlgItemText(IDC_BUSNUM1,str);//                 格式化输出到IDC_BUSNUM1
	m_busnum=m_set.m_bus_number;
	//str.Format("%s",m_set.m_bus_station);
	m_bussta=m_set.m_bus_station;
	//SetDlgItemText(IDC_BUSSTA1,str);
	UpdateData(FALSE);
	m_set.Close();
	
}

void CBusEditDlg::OnOK() 
{
	// TODO: Add extra validation here
	UpdateData(TRUE);
	if(m_set.IsOpen())
		m_set.Close();
	m_set.m_strFilter.Format("bus_number=%d",m_busnum);//验证是否存在了次车次
	m_set.Open();
	if(!m_set.IsEOF())
	{
		m_set.Edit();
		m_set.m_bus_station=m_bussta;
		if(m_set.CanUpdate())
			m_set.Update();
		if(m_set.IsOpen())
			m_set.Close();
		AfxMessageBox("修改成功!");
		
	}
	else 
	{
		m_set.Close();
		AfxMessageBox("车次不能被修改,你可以添加新的车次!");
		return;
	}


	
	CDialog::OnOK();
}

⌨️ 快捷键说明

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