📄 stumqdlg.cpp
字号:
// StuMQdlg.cpp : implementation file
//
#include "stdafx.h"
#include "Student.h"
#include "StuMQdlg.h"
#include "StudentSet.h"
#include "StuCourseSet.h"
#include "DormSet.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
/////////////////////////////////////////////////////////////////////////////
// CStuMQdlg dialog
CStuMQdlg::CStuMQdlg(CWnd* pParent /*=NULL*/)
: CDialog(CStuMQdlg::IDD, pParent)
{
//{{AFX_DATA_INIT(CStuMQdlg)
m_no = _T("");
m_name = _T("");
//}}AFX_DATA_INIT
}
void CStuMQdlg::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
//{{AFX_DATA_MAP(CStuMQdlg)
DDX_Control(pDX, IDC_LIST_STUQ, m_stuQery_List);
DDX_Text(pDX, IDC_EDIT_NO, m_no);
DDV_MaxChars(pDX, m_no, 8);
DDX_Text(pDX, IDC_EDIT_NAME, m_name);
DDV_MaxChars(pDX, m_name, 40);
//}}AFX_DATA_MAP
}
BEGIN_MESSAGE_MAP(CStuMQdlg, CDialog)
//{{AFX_MSG_MAP(CStuMQdlg)
ON_BN_CLICKED(IDC_BTN_PERSON, OnBtnPerson)
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
/////////////////////////////////////////////////////////////////////////////
// CStuMQdlg message handlers
void CStuMQdlg::OnBtnPerson()
{
// TODO: Add your control notification handler code here
CStudentSet pstu;
CStuCourseSet pstucourse;
CDormSet pdorm;
try{
CString strSQL1,strSQL2,strSQL3;
if(!m_no.IsEmpty()){
strSQL1="select * from student where pstu.m_Stu_no=m_no";
//strSQL2="select * from stu_course where pstucourse.m_Stu_no=m_no";
//strSQL3="select * from dormitory where pdorm.m_Dorm_no=(select Dorm_no from student where pstu.Dorm_no=m_no)";
}
else if(m_name.IsEmpty()){
AfxMessageBox("请输入所要查询的学生的学号或姓名!");return;
}
strSQL1="select * from student where pstu.m_Name=m_name";
//
//AfxMessageBox("打开数据库!");
if(!pstu.Open(AFX_DB_USE_DEFAULT_TYPE,strSQL1))
{
AfxMessageBox("打开数据库失败!");
return;
}
m_stuQery_List.DeleteAllItems();//将表中原有的记录全部删掉
int i=0;
CString str;
while(!pstu.IsEOF())
{
strSQL2="select * from stu_course where pstucourse.m_Stu_no=pstu.m_Stu_no";
strSQL3="select * from dormitory where pdorm.m_Dorm_no=pstu.m_Dorm";
if(!pstucourse.Open(AFX_DB_USE_DEFAULT_TYPE,strSQL2)){
AfxMessageBox("打开数据库失败!");
return;
}
if(!pdorm.Open(AFX_DB_USE_DEFAULT_TYPE,strSQL3)){
AfxMessageBox("打开数据库失败!");
return;
}
//插入基本信息的内容
m_stuQery_List.InsertItem(i,pstu.m_Stu_no);
m_stuQery_List.SetItemText(i,1,pstu.m_Name);
m_stuQery_List.SetItemText(i,2,pstu.m_Nation);
m_stuQery_List.SetItemText(i,3,pstu.m_Sex);
str.Format("%s",pstu.m_Birth);
m_stuQery_List.SetItemText(i,4,str);
m_stuQery_List.SetItemText(i,5,pstu.m_Polity);
m_stuQery_List.SetItemText(i,6,pstu.m_Scoure);
str.Format("%s",pstu.m_Score);
m_stuQery_List.SetItemText(i,7,str);
m_stuQery_List.SetItemText(i,8,pstu.m_Dom_no);
m_stuQery_List.SetItemText(i,9,pstu.m_Home_phone);
m_stuQery_List.SetItemText(i,10,pstu.m_Address);
m_stuQery_List.SetItemText(i,11,pstu.m_Content);
//插入住宿信息的内容
m_stuQery_List.SetItemText(i,12,pdorm.m_Build_no);
m_stuQery_List.SetItemText(i,13,pdorm.m_Apartment_no);
str.Format("%s",pdorm.m_Stu_num);
m_stuQery_List.SetItemText(i,14,str);
m_stuQery_List.SetItemText(i,15,pdorm.m_Manager);
m_stuQery_List.SetItemText(i,16,pdorm.m_Phone);
m_stuQery_List.SetItemText(i,17,pdorm.m_Class_no);
//插入选课信息表,默认每人可以选三门课
int j=0;
while(!pstucourse.IsEOF()){
m_stuQery_List.SetItemText(i,18+2*j,pstucourse.m_Course_no);
str.Format("%s",pstucourse.m_Score);
m_stuQery_List.SetItemText(i,19+2*j,str);
j++;
pstucourse.MoveNext();
}
i++;
pstucourse.Close();
pdorm.Close();
pstu.MoveNext();
}
pstu.Close();
}
catch(CDBException *pe){
AfxMessageBox(pe->m_strError);
pe->Delete();
}
}
void CStuMQdlg::OnCancel()
{
// TODO: Add extra cleanup here
CDialog::OnCancel();
}
BOOL CStuMQdlg::OnInitDialog()
{
CDialog::OnInitDialog();
// TODO: Add extra initialization here
m_stuQery_List.InsertColumn(0,"学号");
m_stuQery_List.InsertColumn(1,"姓名");
m_stuQery_List.InsertColumn(2,"民族");
m_stuQery_List.InsertColumn(3,"性别");
m_stuQery_List.InsertColumn(4,"出生日期");
m_stuQery_List.InsertColumn(5,"政治面貌");
m_stuQery_List.InsertColumn(6,"学生来源");
m_stuQery_List.InsertColumn(7,"入学成绩");
m_stuQery_List.InsertColumn(8,"住宿编号");
m_stuQery_List.InsertColumn(9,"家庭联系电话");
m_stuQery_List.InsertColumn(10,"家庭住址");
m_stuQery_List.InsertColumn(11,"备注");
/*********************************************/
m_stuQery_List.InsertColumn(12,"楼号");
m_stuQery_List.InsertColumn(13,"房间编号");
m_stuQery_List.InsertColumn(14,"人数");
m_stuQery_List.InsertColumn(15,"舍长编号");
m_stuQery_List.InsertColumn(16,"电话号码");
m_stuQery_List.InsertColumn(17,"所在班级");
/*******************************************/
m_stuQery_List.InsertColumn(18,"课程号");
m_stuQery_List.InsertColumn(19,"成绩");
///////////////////////////////////
m_stuQery_List.SetColumnWidth(0,60);
m_stuQery_List.SetColumnWidth(1,60);
m_stuQery_List.SetColumnWidth(2,60);
m_stuQery_List.SetColumnWidth(3,60);
m_stuQery_List.SetColumnWidth(4,100);
m_stuQery_List.SetColumnWidth(5,100);
m_stuQery_List.SetColumnWidth(6,100);
m_stuQery_List.SetColumnWidth(7,100);
m_stuQery_List.SetColumnWidth(8,100);
m_stuQery_List.SetColumnWidth(9,100);
m_stuQery_List.SetColumnWidth(10,100);
m_stuQery_List.SetColumnWidth(11,140);
/***************************************/
m_stuQery_List.SetColumnWidth(12,100);
m_stuQery_List.SetColumnWidth(13,100);
m_stuQery_List.SetColumnWidth(14,100);
m_stuQery_List.SetColumnWidth(15,100);
m_stuQery_List.SetColumnWidth(16,100);
m_stuQery_List.SetColumnWidth(17,100);
/******************************************/
m_stuQery_List.SetColumnWidth(1,80);
m_stuQery_List.SetColumnWidth(1,80);
m_stuQery_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
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -