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

📄 1.txt

📁 一个信息管理系统C代码 不完全
💻 TXT
📖 第 1 页 / 共 2 页
字号:
// ChangeDegradeDlg.cpp : implementation file    
//    
   
#include "stdafx.h"    
#include "school.h"    
#include "ChangeDegradeDlg.h"    
#include "ChangeDegradeInfoDlg.h"    
   
#ifdef _DEBUG    
#define new DEBUG_NEW    
#undef THIS_FILE    
static char THIS_FILE[] = __FILE__;   
#endif    
   
/////////////////////////////////////////////////////////////////////////////    
// CChangeDegradeDlg dialog    
   
   
CChangeDegradeDlg::CChangeDegradeDlg(CWnd* pParent /*=NULL*/)   
    : CDialog(CChangeDegradeDlg::IDD, pParent)   
{   
    //{{AFX_DATA_INIT(CChangeDegradeDlg)    
        // NOTE: the ClassWizard will add member initialization here    
    //}}AFX_DATA_INIT    
}   
   
   
void CChangeDegradeDlg::DoDataExchange(CDataExchange* pDX)   
{   
    CDialog::DoDataExchange(pDX);   
    //{{AFX_DATA_MAP(CChangeDegradeDlg)    
    DDX_Control(pDX, IDC_LIST1, m_ctrList);   
    //}}AFX_DATA_MAP    
}   
   
   
BEGIN_MESSAGE_MAP(CChangeDegradeDlg, CDialog)   
    //{{AFX_MSG_MAP(CChangeDegradeDlg)    
    ON_BN_CLICKED(IDC_BUTTON_NEW, OnButtonNew)   
    ON_BN_CLICKED(IDC_BUTTON_MODIFY, OnButtonModify)   
    ON_BN_CLICKED(IDC_BUTTON_DELETE, OnButtonDelete)   
    ON_NOTIFY(NM_DBLCLK, IDC_LIST1, OnDblclkList1)   
    //}}AFX_MSG_MAP    
END_MESSAGE_MAP()   
   
/////////////////////////////////////////////////////////////////////////////    
// CChangeDegradeDlg message handlers    
   
BOOL CChangeDegradeDlg::OnInitDialog()    
{   
    CDialog::OnInitDialog();   
       
    m_ctrList.InsertColumn(0,"编号");   
    m_ctrList.InsertColumn(1,"留级人");   
    m_ctrList.InsertColumn(2,"原属班级");   
    m_ctrList.InsertColumn(3,"留级班级");   
    m_ctrList.InsertColumn(4,"留级日期");   
    m_ctrList.InsertColumn(5,"留级原因");   
   
    m_ctrList.SetColumnWidth(0,80);   
    m_ctrList.SetColumnWidth(1,80);   
    m_ctrList.SetColumnWidth(2,80);   
    m_ctrList.SetColumnWidth(3,80);   
    m_ctrList.SetColumnWidth(4,80);   
    m_ctrList.SetColumnWidth(5,120);   
    m_ctrList.SetExtendedStyle(LVS_EX_FULLROWSELECT|LVS_EX_GRIDLINES);   
    RefreshData();   
       
    return TRUE;  // return TRUE unless you set the focus to a control    
                  // EXCEPTION: OCX Property Pages should return FALSE    
}   
   
   
void CChangeDegradeDlg::RefreshData()   
{   
   
    m_ctrList.DeleteAllItems();   
    m_ctrList.SetRedraw(FALSE);   
   
    UpdateData(TRUE);   
    CString strSQL;   
    strSQL="select * from degrade";   
    if(!m_recordset.Open(AFX_DB_USE_DEFAULT_TYPE,strSQL))   
    {   
        MessageBox("打开数据库失败!","数据库错误",MB_OK);   
        return ;   
    }      
    int i=0;   
    while(!m_recordset.IsEOF())   
    {   
           
        m_ctrList.InsertItem(i,m_recordset.m_code);   
        m_ctrList.SetItemText(i,1,m_recordset.m_name);   
        m_ctrList.SetItemText(i,2,m_recordset.m_class_past);   
        m_ctrList.SetItemText(i,3,m_recordset.m_class_now);   
        m_ctrList.SetItemText(i,4,m_recordset.m_date);   
        m_ctrList.SetItemText(i,5,m_recordset.m_reason);   
   
        i++;   
        m_recordset.MoveNext();   
    }   
    m_recordset.Close();   
    m_ctrList.SetRedraw(TRUE);   
       
}   
   
void CChangeDegradeDlg::OnButtonNew()    
{   
    // TODO: Add your control notification handler code here    
    CString strSQL;   
    CChangeDegradeInfoDlg   Dlg;   
    while(1)   
    {   
        if(IDOK==Dlg.DoModal())   
        {   
            strSQL.Format("select * from degrade where code = '%s'",Dlg.m_strCode);   
            if(!m_recordset.Open(AFX_DB_USE_DEFAULT_TYPE,strSQL))   
            {   
                AfxMessageBox("打开数据库失败!");   
                return ;   
            }   
            if(m_recordset.GetRecordCount()!=0)   
            {   
                AfxMessageBox("该编号已经存在!请重新输入!");   
                m_recordset.Close();   
                continue;   
            }   
               
            m_recordset.AddNew();   
            m_recordset.m_name      =   Dlg.m_strName       ;   
            m_recordset.m_reason    =   Dlg.m_strBrief      ;   
            m_recordset.m_date      =   Dlg.m_strDate       ;   
            m_recordset.m_class_past=   Dlg.m_strOldClass   ;   
            m_recordset.m_code      =   Dlg.m_strCode       ;   
            m_recordset.m_class_now =   Dlg.m_strNewClass   ;   
            m_recordset.Update();   
            m_recordset.Close();   
            RefreshData();   
        }   
        break;   
    }              
}   
   
void CChangeDegradeDlg::OnButtonModify()    
{   
    // TODO: Add your control notification handler code here    
    CChangeDegradeInfoDlg  Dlg;   
    UpdateData();   
    int i = m_ctrList.GetSelectionMark();   
    if(0>i)   
    {   
        AfxMessageBox("请选择一条记录进行修改!");   
        return;   
    }   
   
       
    Dlg.m_strName           =   m_ctrList.GetItemText(i,1);   
    Dlg.m_strBrief          =   m_ctrList.GetItemText(i,5);   
    Dlg.m_strDate           =   m_ctrList.GetItemText(i,4);   
    Dlg.m_strOldClass       =   m_ctrList.GetItemText(i,2);   
    Dlg.m_strCode           =   m_ctrList.GetItemText(i,0);   
    Dlg.m_strNewClass       =   m_ctrList.GetItemText(i,3);   
   
    if(IDOK==Dlg.DoModal())   
    {//修改记录    
        CString strSQL;   
        strSQL.Format("select * from degrade where code = '%s'",m_ctrList.GetItemText(i,0));   
        if(!m_recordset.Open(AFX_DB_USE_DEFAULT_TYPE,strSQL))   
        {   
            AfxMessageBox("打开数据库失败!");   
            return ;   
        }   
        m_recordset.Edit();   
        m_recordset.m_name      =   Dlg.m_strName       ;   
        m_recordset.m_reason    =   Dlg.m_strBrief      ;   
        m_recordset.m_date      =   Dlg.m_strDate       ;   
        m_recordset.m_class_past=   Dlg.m_strOldClass   ;   
        m_recordset.m_code      =   Dlg.m_strCode       ;   
        m_recordset.m_class_now =   Dlg.m_strNewClass   ;   
        m_recordset.Update();   
        m_recordset.Close();   
        RefreshData();   
    }                      
}   
   
void CChangeDegradeDlg::OnButtonDelete()    
{   
    // TODO: Add your control notification handler code here    
    int i = m_ctrList.GetSelectionMark();   
    if(0>i)   
    {   
        AfxMessageBox("请选择一条记录进行查看!");   
        return;   
    }   
    CString strSQL;   
    strSQL.Format("select * from degrade where code = '%s' ",m_ctrList.GetItemText(i,0));   
    if(!m_recordset.Open(AFX_DB_USE_DEFAULT_TYPE,strSQL))   
    {   
        AfxMessageBox("打开数据库失败!");   
        return ;   
    }   
    m_recordset.Delete();   
    m_recordset.Close();   
    RefreshData();                 
}   
   
void CChangeDegradeDlg::OnDblclkList1(NMHDR* pNMHDR, LRESULT* pResult)    
{   
    // TODO: Add your control notification handler code here    
    CChangeDegradeInfoDlg  Dlg;   
    UpdateData();   
    int i = m_ctrList.GetSelectionMark();   
    if(0>i)   
    {   
        AfxMessageBox("请选择一条记录进行修改!");   
        return;   
    }   
   
       
    Dlg.m_strName           =   m_ctrList.GetItemText(i,1);   
    Dlg.m_strBrief          =   m_ctrList.GetItemText(i,5);   
    Dlg.m_strDate           =   m_ctrList.GetItemText(i,4);   
    Dlg.m_strOldClass       =   m_ctrList.GetItemText(i,2);   
    Dlg.m_strCode           =   m_ctrList.GetItemText(i,0);   
    Dlg.m_strNewClass       =   m_ctrList.GetItemText(i,3);   
   
    if(IDOK==Dlg.DoModal())   
    {//修改记录    
        CString strSQL;   
        strSQL.Format("select * from degrade where code = '%s'",m_ctrList.GetItemText(i,0));   
        if(!m_recordset.Open(AFX_DB_USE_DEFAULT_TYPE,strSQL))   
        {   
            AfxMessageBox("打开数据库失败!");   
            return ;   
        }   
        m_recordset.Edit();   
        m_recordset.m_name      =   Dlg.m_strName       ;   
        m_recordset.m_reason    =   Dlg.m_strBrief      ;   
        m_recordset.m_date      =   Dlg.m_strDate       ;   
        m_recordset.m_class_past=   Dlg.m_strOldClass   ;   
        m_recordset.m_code      =   Dlg.m_strCode       ;   
        m_recordset.m_class_now =   Dlg.m_strNewClass   ;   
        m_recordset.Update();   
        m_recordset.Close();   
        RefreshData();   
    }                      
    *pResult = 0;   
}   

// ChangeDegradeDlg.cpp : implementation file 
// 
 
#include "stdafx.h" 

⌨️ 快捷键说明

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