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

📄 mainsdlg.cpp

📁 学校社团管理系统Visual C
💻 CPP
字号:
/**
 * <p> Title: 登录系统后进入的主窗口类实现 </p>
 * <p> Description:为用户提供进入各模块的菜单选择 </p>
 * <p> Copyright: Copyright (c) 2005-12-17 </p>
 * <p> Company: bjut </p>
 * @author gaok
 * @version 1.0 
 * @Created on 2005-12-17
 */

#include "stdafx.h"
#include "resource.h"
#include "STMis.h"
#include "MainsDlg.h"
#include "STInfoDlg.h"
#include "XSAddDlg.h"
#include "StuMangeDlg.h"
#include "NoticeMangeDlg.h"
#include "SearchSTDlg.h"
#include "SearchXSDlg.h"
#include "SearchNoticeDlg.h"
#include "StMangeDlg.h"
#include "UserDlg.h"
#include "About.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif

/////////////////////////////////////////////////////////////////////////////
// CMainsDlg dialog

/*
 * 构造函数
 */
CMainsDlg::CMainsDlg(CWnd* pParent /*=NULL*/)
	: CDialog(CMainsDlg::IDD, pParent)
{
	//{{AFX_DATA_INIT(CMainsDlg)
		// NOTE: the ClassWizard will add member initialization here
	m_username = _T("");
	//m_bIsAdmin = true;
	//}}AFX_DATA_INIT
}


void CMainsDlg::DoDataExchange(CDataExchange* pDX)
{
	CDialog::DoDataExchange(pDX);
	//{{AFX_DATA_MAP(CMainsDlg)
		// NOTE: the ClassWizard will add DDX and DDV calls here
	DDX_Text(pDX, IDC_EDIT1, m_username);
	//}}AFX_DATA_MAP
}

// 建立MainsDlg的信息映射表
BEGIN_MESSAGE_MAP(CMainsDlg, CDialog)
	//{{AFX_MSG_MAP(CMainsDlg)
	ON_WM_PAINT()
	ON_COMMAND(ID_MENUITEM32777, OnAddXS)
	ON_COMMAND(ID_MENUITEM32782, OnStudentManage)
	ON_COMMAND(ID_MENUITEM32774, OnMenuitem32774)
	ON_COMMAND(ID_MENUITEM32785, OnSearchST)
	ON_COMMAND(ID_MENUITEM32789, OnMenuitem32789)
	ON_COMMAND(ID_MENUITEM32790, OnMenuitem32790)
	ON_COMMAND(ID_MENUITEM32786, OnMenuitem32786)
	ON_COMMAND(ID_MENUITEM32791, OnMenuitem32791)
	ON_COMMAND(ID_APP_EXIT, OnAppExit)
	ON_COMMAND(ID_MENUITEM32792, OnMenuitem32792)
	//}}AFX_MSG_MAP
END_MESSAGE_MAP()

/////////////////////////////////////////////////////////////////////////////
// CMainsDlg message handlers
/**
 * 初始化窗口,设置菜单各个选项的状态
 */
BOOL CMainsDlg::OnInitDialog()
{
	CDialog::OnInitDialog();

	// Add "About..." menu item to system menu.

	// IDM_ABOUTBOX must be in the system command range.
	ASSERT((IDM_ABOUTBOX & 0xFFF0) == IDM_ABOUTBOX);
	ASSERT(IDM_ABOUTBOX < 0xF000);

	CMenu* pSysMenu = GetSystemMenu(FALSE);
	if (pSysMenu != NULL)
	{
		CString strAboutMenu;
		strAboutMenu.LoadString(IDS_ABOUTBOX);
		if (!strAboutMenu.IsEmpty())
		{
			pSysMenu->AppendMenu(MF_SEPARATOR);
			pSysMenu->AppendMenu(MF_STRING, IDM_ABOUTBOX, strAboutMenu);
		}
	}

	// TODO: Add extra initialization here
	if (!m_bIsAdmin) { // 如果登陆的用户是普通用户,那么只允许该用户进行查询操作
	    CMenu MainMenu; // 声明一个菜单对象
        MainMenu.LoadMenu(IDR_TRAIN_MENU); // 载入菜单资源,成功返回非零值,失败返回零值
	    //int iC = MainMenu.CheckMenuItem(ID_MENUITEM32771,MF_BYCOMMAND|MF_CHECKED);
	    //MainMenu.GetSubMenu(0);
	    //MainMenu.ModifyMenu(ID_MENUITEM32771,MF_GRAYED,ID_MENUITEM32771,"增加"); // 将社团组织管理模块的增加功能置灰,不允许普通用户操作此功能
        //MainMenu.ModifyMenu(ID_MENUITEM32772,MF_GRAYED,ID_MENUITEM32771,"修改"); // 将社团组织管理模块的修改功能置灰,不允许普通用户操作此功能
		//MainMenu.ModifyMenu(ID_MENUITEM32773,MF_GRAYED,ID_MENUITEM32771,"删除"); // 将社团组织管理模块的删除功能置灰,不允许普通用户操作此功能
		MainMenu.ModifyMenu(ID_MENUITEM32777,MF_GRAYED,ID_MENUITEM32777,"增加学生"); // 将学生信息管理模块的增加学生功能置灰,不允许普通用户操作此功能
        SetMenu(&MainMenu); // 设定应用程序所使用之菜单
        MainMenu.Detach(); // 将菜单资源与菜单对象分离
	}
	return TRUE;  // return TRUE  unless you set the focus to a control
}
/**
 * 加载背景图案
 */
void CMainsDlg::OnPaint() 
{
    CPaintDC* pDC = new CPaintDC(this);
	CBitmap bmp;
	RECT Rect;
	RECT RectView;
	POINT ptSize;
	CDC dcmem;
	BITMAP bm;
	int b = bmp.LoadBitmap(IDB_BITMAP_BG);
	dcmem.CreateCompatibleDC(pDC);
    dcmem.SelectObject(&bmp);
	dcmem.SetMapMode(pDC->GetMapMode());
	GetObject(bmp.m_hObject, sizeof(BITMAP), (LPSTR)&bm);
	GetClientRect(&Rect);
	ptSize.x = bm.bmWidth;
	ptSize.y = bm.bmHeight;
	pDC->DPtoLP((LPPOINT)&ptSize, 1);
	GetClientRect(&RectView);
	CRect RectBmp = RectView;

	/* 图宽容纳不下的处理 */
	if ((RectView.right - RectView.left) > bm.bmWidth) {
	    RectBmp.left = RectView.left + (RectView.right - RectView.left - bm.bmWidth)/2;
		RectBmp.right = bm.bmWidth; 
	} else {
        RectBmp.left = RectView.left;
		RectBmp.right = RectView.right - RectBmp.left;
	}
	if ((RectView.bottom - RectView.top) > bm.bmHeight) {
		RectBmp.top =  RectView.top + (RectView.bottom - RectView.top - bm.bmHeight)/2;
        RectBmp.bottom = bm.bmHeight; 
	} else {
		RectBmp.top =  RectView.top;
        RectBmp.bottom = RectView.bottom - RectBmp.top; 
	}
	/* 加载视图到设备上下文中 */
	pDC->StretchBlt(RectBmp.left, RectBmp.top, RectBmp.right, \
		RectBmp.bottom, &dcmem, 0, 0, bm.bmWidth, bm.bmHeight, \
		SRCCOPY);
	/*  删除设备上下文 */
	dcmem.DeleteDC();
	
}

/**
 * 学生信息管理--增加
 */
void CMainsDlg::OnAddXS() 
{
	CXSAddDlg m_XSAdd; // 增加学生
	m_XSAdd.m_username.Format("%s",m_username); // 获得录入人
	m_XSAdd.DoModal();
	
}
/**
 * 社团组织管理--增加功能设置为无效
 */
void CMainsDlg::OnUpdateMenuitem32771(CCmdUI* pCmdUI) 
{
	// TODO: Add your command update UI handler code here
	pCmdUI->Enable(m_bIsAdmin); // 如果是普通用户登录,将社团管理模块的增加功能设为无效
}
/**
 * 学生信息管理--学生信息维护
 */
void CMainsDlg::OnStudentManage() 
{
	CStuMangeDlg m_StuMange; // 学生信息维护窗口对象
	m_StuMange.m_username.Format("%s",m_username); // 获得录入人
	m_StuMange.m_bIsAdmin = m_bIsAdmin; // 是否是管理员
	m_StuMange.DoModal(); // 实例
	
}
/**
 * 活动管理--通知信息维护
 */
void CMainsDlg::OnMenuitem32774() 
{
	CNoticeMangeDlg m_NoticeMange; // 学生信息维护窗口对象
	m_NoticeMange.m_username.Format("%s",m_username); // 获得录入人
    m_NoticeMange.m_bIsAdmin = m_bIsAdmin; // 是否是管理员 
	m_NoticeMange.DoModal(); // 实例
	
}
/**
 * 综合查询--社团查询
 */
void CMainsDlg::OnSearchST() 
{
	// 给定学生信息,查询社团信息
    CSearchSTDlg m_SearchSTDlg;
    m_SearchSTDlg.DoModal(); // 实例
	
}
/**
 * 综合查询--学生信息查询
 */
void CMainsDlg::OnMenuitem32789() 
{
	// 给定社团名称,查询学生信息
    CSearchXSDlg m_SearchXSDlg;
    m_SearchXSDlg.DoModal(); // 实例
	
}
/**
 * 综合查询--活动信息查询
 */
void CMainsDlg::OnMenuitem32790() 
{
	CSearchNoticeDlg m_SearchNoticeDlg;
	m_SearchNoticeDlg.DoModal(); // 实例
}
/**
 * 系统管理--用户设置
 */
void CMainsDlg::OnMenuitem32786() 
{
	CUserDlg Dlg;
	Dlg.m_username.Format("%s",m_username); // 获得录入人
    Dlg.m_IsAdmin = m_bIsAdmin; // 是否是管理员
	Dlg.DoModal();
	
}
/**
 * 注销
 */
void CMainsDlg::OnClose() 
{
    if(AfxMessageBox("您确定要退出系统吗?",MB_OKCANCEL)==IDCANCEL)
	{
		return;
	}			
	this->OnCancel(); // 退出系统
}

void CMainsDlg::OnMenuitem32791() 
{
	// TODO: Add your command handler code here
	CAbout aboutDlg;
	
	aboutDlg.DoModal();
}

void CMainsDlg::OnAppExit() 
{
	// TODO: Add your command handler code here
	OnClose();
}
/**
 * 社团组织管理--社团组织维护
 */
void CMainsDlg::OnMenuitem32792() 
{
	CStMangeDlg m_StMange; // 社团组织维护窗口对象
	m_StMange.m_username.Format("%s",m_username); // 获得录入人
    m_StMange.m_bIsAdmin = m_bIsAdmin; // 是否是管理员 
	m_StMange.DoModal(); // 实例
	
}

⌨️ 快捷键说明

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