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

📄 cmain.cpp

📁 C++编写的大学学生选课系统
💻 CPP
字号:
// CMain.cpp : implementation file
//

#include "stdafx.h"
#include "EXAM4.h"
#include "CMain.h"
#include "DXuanke.h"

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

/////////////////////////////////////////////////////////////////////////////
// CCMain dialog


CCMain::CCMain(CWnd* pParent /*=NULL*/)
	: CDialog(CCMain::IDD, pParent)
{
	//{{AFX_DATA_INIT(CCMain)
		// NOTE: the ClassWizard will add member initialization here
	//}}AFX_DATA_INIT
}


void CCMain::DoDataExchange(CDataExchange* pDX)
{
	CDialog::DoDataExchange(pDX);
	//{{AFX_DATA_MAP(CCMain)
	DDX_Control(pDX, IDC_LIST3, m_yixuan);
	DDX_Control(pDX, IDC_LIST2, m_weixuan);
	DDX_Control(pDX, IDC_LIST1, m_kebiao);
	//}}AFX_DATA_MAP
}


BEGIN_MESSAGE_MAP(CCMain, CDialog)
	//{{AFX_MSG_MAP(CCMain)
	ON_BN_CLICKED(IDC_BUTTON1, OnXuanKe)
	ON_BN_CLICKED(IDC_BUTTON2, OnButton2)
	//}}AFX_MSG_MAP
END_MESSAGE_MAP()

/////////////////////////////////////////////////////////////////////////////
// CCMain message handlers
	int alo=0;
	int yu=0;
	int shu=0;
	int ying=0;
	int ti=0;
BOOL CCMain::OnInitDialog() 
{
	CDialog::OnInitDialog();


	alo=0;
	yu=0;
	shu=0;
	ying=0;
	ti=0;

	//初始化整个选课窗口
	{
		m_kebiao.InsertColumn(0,"",LVCFMT_LEFT,60);
		m_kebiao.InsertColumn(1,"周一",LVCFMT_LEFT,60);
		m_kebiao.InsertColumn(2,"周二",LVCFMT_LEFT,60);
		m_kebiao.InsertColumn(3,"周三",LVCFMT_LEFT,60);
		m_kebiao.InsertColumn(4,"周四",LVCFMT_LEFT,60);
		m_kebiao.InsertColumn(5,"周五",LVCFMT_LEFT,60);
		m_kebiao.InsertColumn(6,"周六",LVCFMT_LEFT,60);
		m_kebiao.InsertColumn(7,"周日",LVCFMT_LEFT,60);
		CDXuanke dx;
		dx.Open();
		dx.m_strFilter="sno='"+stusno+"'";
		dx.Requery();
		m_kebiao.InsertItem(0,"第一节");
		m_kebiao.InsertItem(1,"第二节");
		m_kebiao.InsertItem(2,"第三节");
		m_kebiao.InsertItem(3,"第四节");
		m_kebiao.InsertItem(4,"第五节");
		m_kebiao.InsertItem(5,"第六节");
		m_kebiao.InsertItem(6,"第七节");
		m_kebiao.InsertItem(7,"第八节");
		m_yixuan.InsertColumn(0,"课程名",LVCFMT_LEFT,80);
		m_yixuan.InsertColumn(1,"上课时间",LVCFMT_LEFT,110);
		m_weixuan.InsertColumn(0,"课程名",LVCFMT_LEFT,80);
		m_weixuan.InsertColumn(1,"上课时间",LVCFMT_LEFT,110);

		m_weixuan.SetExtendedStyle(LVS_EX_FULLROWSELECT);
		m_yixuan.SetExtendedStyle(LVS_EX_FULLROWSELECT);
		m_kebiao.SetExtendedStyle(LVS_EX_FULLROWSELECT);
		
		alo=0;

		CDCha dc;
		dc.Open();
		while(!dx.IsEOF())
		{
			if(dx.m_cname=="语文")
			{
				m_kebiao.SetItemText(0,2,dx.m_cname);
				m_kebiao.SetItemText(1,2,dx.m_cname);
				m_yixuan.InsertItem(alo,dx.m_cname);
				dc.m_strFilter="cname='"+dx.m_cname+"'";
				dc.Requery();
				m_yixuan.SetItemText(alo,1,dc.m_ctime);
				yu=1;
				alo++;
			}

			if(dx.m_cname=="数学")
			{
				m_kebiao.SetItemText(6,3,dx.m_cname);
				m_kebiao.SetItemText(7,3,dx.m_cname);
				m_yixuan.InsertItem(alo,dx.m_cname);
				dc.m_strFilter="cname='"+dx.m_cname+"'";
				dc.Requery();
				m_yixuan.SetItemText(alo,1,dc.m_ctime);
				shu=1;
				alo++;
			}

			if(dx.m_cname=="英语")
			{
				m_kebiao.SetItemText(2,5,dx.m_cname);
				m_kebiao.SetItemText(3,5,dx.m_cname);
				m_yixuan.InsertItem(alo,dx.m_cname);
				dc.m_strFilter="cname='"+dx.m_cname+"'";
				dc.Requery();
				m_yixuan.SetItemText(alo,1,dc.m_ctime);
				ying=1;
				alo++;
			}

			if(dx.m_cname=="体育")
			{
				m_kebiao.SetItemText(4,1,dx.m_cname);
				m_kebiao.SetItemText(5,1,dx.m_cname);
				m_yixuan.InsertItem(alo,dx.m_cname);
				dc.m_strFilter="cname='"+dx.m_cname+"'";
				dc.Requery();
				m_yixuan.SetItemText(alo,1,dc.m_ctime);
				ti=1;
				alo++;
			}
			dx.MoveNext();
		}


		alo=0;
		if(yu==0)
		{
			m_weixuan.InsertItem(alo,"语文");
			m_weixuan.SetItemText(alo,1,"周二1.2节");
			alo++;
		}
		if(shu==0)
		{
			m_weixuan.InsertItem(alo,"数学");
			m_weixuan.SetItemText(alo,1,"周三7.8节");
			alo++;
		}
		if(ying==0)
		{
			m_weixuan.InsertItem(alo,"英语");
			m_weixuan.SetItemText(alo,1,"周五3.4节");
			alo++;
		}
		if(ti==0)
		{
			m_weixuan.InsertItem(alo,"体育");
			m_weixuan.SetItemText(alo,1,"周一5.6节");
			alo++;
		}
	}
	return true;  // return TRUE unless you set the focus to a control
	              // EXCEPTION: OCX Property Pages should return FALSE
}

void CCMain::OnXuanKe() 
{

	//选课按钮功能实现
	POSITION Position = m_weixuan.GetFirstSelectedItemPosition();  
	int Item = m_weixuan.GetNextSelectedItem(Position);
	CDXuanke dx;
   	if(Item>-1)  
	{  
		if(!dx.IsOpen())  
		{  
			dx.Open();  
		}  
		dx.MoveFirst();  
		dx.Move(Item);
		dx.AddNew();
		dx.m_sno=stusno;
		dx.m_cname=m_weixuan.GetItemText(Item,0);
		dx.Update();

		if(m_weixuan.GetItemText(Item,0)=="语文")
		{
			m_kebiao.SetItemText(0,2,"语文");
			m_kebiao.SetItemText(1,2,"语文");
			m_yixuan.InsertItem(alo,"语文");
			m_yixuan.SetItemText(alo,1,"周二1.2节");
			alo++;
			yu=1;
		}
		if(m_weixuan.GetItemText(Item,0)=="数学")
		{
			m_kebiao.SetItemText(6,3,"数学");
			m_kebiao.SetItemText(7,3,"数学");
			m_yixuan.InsertItem(alo,"数学");
			m_yixuan.SetItemText(alo,1,"周三7.8节");
			alo++;
			shu=1;
		}
		if(m_weixuan.GetItemText(Item,0)=="英语")
		{
			m_kebiao.SetItemText(2,5,"英语");
			m_kebiao.SetItemText(3,5,"英语");
			m_yixuan.InsertItem(alo,"英语");
			m_yixuan.SetItemText(alo,1,"周五3.4节");
			alo++;
			ying=1;
		}
		if(m_weixuan.GetItemText(Item,0)=="体育")
		{
			m_kebiao.SetItemText(4,1,"体育");
			m_kebiao.SetItemText(5,1,"体育");
			m_yixuan.InsertItem(alo,"体育");
			m_yixuan.SetItemText(alo,1,"周一5.6节");
			alo++;
			ti=1;
		}
	}
	m_weixuan.DeleteItem(Item);
}




void CCMain::OnButton2() 
{
	//退课按钮功能实现
	POSITION Position = m_yixuan.GetFirstSelectedItemPosition();  
	int Item = m_yixuan.GetNextSelectedItem(Position);
	
   	if(Item>-1)  
	{  
		CDXuanke dxq;
			if(!dxq.IsOpen())  
			{  
				dxq.Open();  
			}  
			dxq.m_strFilter="sno='"+stusno+"' and cname='"+m_yixuan.GetItemText(Item,0)+"'";
			dxq.Requery();
			dxq.Delete();


			if(m_yixuan.GetItemText(Item,0)=="语文")
			{
			m_kebiao.SetItemText(0,2,NULL);
			m_kebiao.SetItemText(1,2,NULL);
			
			m_weixuan.InsertItem(m_weixuan.GetItemCount(),"语文");
			m_weixuan.SetItemText(m_weixuan.GetItemCount()-1,1,"周二1.2节");
			alo--;
			}
			if(m_yixuan.GetItemText(Item,0)=="数学")
			{
			m_kebiao.SetItemText(6,3,NULL);
			m_kebiao.SetItemText(7,3,NULL);
			m_weixuan.InsertItem(m_weixuan.GetItemCount(),"数学");
			m_weixuan.SetItemText(m_weixuan.GetItemCount()-1,1,"周三7.8节");
			alo--;
			}
			if(m_yixuan.GetItemText(Item,0)=="英语")
			{
			m_kebiao.SetItemText(2,5,NULL);
			m_kebiao.SetItemText(3,5,NULL);
			m_weixuan.InsertItem(m_weixuan.GetItemCount(),"英语");
			m_weixuan.SetItemText(m_weixuan.GetItemCount()-1,1,"周五3.4节");
			alo--;
			}
			if(m_yixuan.GetItemText(Item,0)=="体育")
			{
			m_kebiao.SetItemText(4,1,NULL);
			m_kebiao.SetItemText(5,1,NULL);
			m_weixuan.InsertItem(m_weixuan.GetItemCount(),"体育");
			m_weixuan.SetItemText(m_weixuan.GetItemCount()-1,1,"周一5.6节");
			alo--;
			}
	}
	m_yixuan.DeleteItem(Item);	
		
}

⌨️ 快捷键说明

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