www.gusucode.com > 大学排课系统,VC++实现,能实现根据教师及课程资源自动排 > 大学排课系统,VC++实现,能实现根据教师及课程资源自动排课/ARRANGE/AddRoomDlg.cpp

    // AddRoomDlg.cpp : implementation file
//

#include "stdafx.h"
#include "arrange.h"
#include "AddRoomDlg.h"
#include "ClassRoomSet.h"

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

/////////////////////////////////////////////////////////////////////////////
// CAddRoomDlg dialog


CAddRoomDlg::CAddRoomDlg(CWnd* pParent /*=NULL*/)
	: CDialog(CAddRoomDlg::IDD, pParent)
{
	//{{AFX_DATA_INIT(CAddRoomDlg)
	m_media = _T("");
	m_roomname = _T("");
	m_roomsize = 0;
	//}}AFX_DATA_INIT
}


void CAddRoomDlg::DoDataExchange(CDataExchange* pDX)
{
	CDialog::DoDataExchange(pDX);
	//{{AFX_DATA_MAP(CAddRoomDlg)
	DDX_CBString(pDX, IDC_COMBO1, m_media);
	DDX_Text(pDX, IDC_EDIT1, m_roomname);
	DDX_Text(pDX, IDC_EDIT2, m_roomsize);
	DDV_MinMaxInt(pDX, m_roomsize, 0, 400);
	DDX_Control(pDX,IDC_BUTTONRESET,m_reset);
	DDX_Control(pDX,IDOK,m_ok);
	DDX_Control(pDX,IDCANCEL,m_cancel);
	//}}AFX_DATA_MAP
}


BEGIN_MESSAGE_MAP(CAddRoomDlg, CDialog)
	//{{AFX_MSG_MAP(CAddRoomDlg)
	ON_BN_CLICKED(IDC_BUTTONRESET, OnButtonreset)
	//}}AFX_MSG_MAP
END_MESSAGE_MAP()

/////////////////////////////////////////////////////////////////////////////
// CAddRoomDlg message handlers

void CAddRoomDlg::OnOK() 
{
	// TODO: Add extra validation here
	UpdateData(TRUE);
	CString strSQL;
	CString sMedia;
	int imedia;
	GetDlgItemText(IDC_COMBO1,sMedia);
	if (sMedia =="无多媒体")
		imedia = 0;
	else
		imedia = 1;
	CClassRoomSet m_pCRSet(&m_database);
	m_pCRSet.Open();
	if(m_roomname =="" || sMedia == "" || m_roomsize == 0)
			AfxMessageBox("The items cann't be empty",MB_OK|MB_ICONEXCLAMATION);
	else
	{
	strSQL.Format("insert into CLASSROOMS (room_id, room_type, room_size) values \
	(\'%s\', %d, %d)", m_roomname, imedia, m_roomsize);
	m_database.ExecuteSQL(strSQL);
	}
	m_database.Close();

	OnButtonreset();
	//CDialog::OnOK();
}

void CAddRoomDlg::OnButtonreset() 
{
	// TODO: Add your control notification handler code here
	m_media.Empty();
	m_roomname.Empty();
	m_roomsize = 0;
	UpdateData(FALSE);
}

BOOL CAddRoomDlg::OnInitDialog() 
{
	CDialog::OnInitDialog();
	
	// TODO: Add extra initialization here
	m_ok.LoadBitmaps(IDB_BUTTON,5, 5, 5, 5, 4 );
	m_reset.LoadBitmaps(IDB_BUTTON,5, 5, 5, 5, 4 );
	m_cancel.LoadBitmaps(IDB_BUTTON,5, 5, 5, 5, 4 );
	
	return TRUE;  // return TRUE unless you set the focus to a control
	              // EXCEPTION: OCX Property Pages should return FALSE
}