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

📄 setview.cpp

📁 一套人事管理系统
💻 CPP
字号:
// SETVIEW.cpp : implementation file
//

#include "stdafx.h"
#include "zhurui_jk02_人事管理.h"
#include "SETVIEW.h"

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

/////////////////////////////////////////////////////////////////////////////
// CSETVIEW

IMPLEMENT_DYNCREATE(CSETVIEW, CRecordView)

CSETVIEW::CSETVIEW()
	: CRecordView(CSETVIEW::IDD)
{
	//{{AFX_DATA_INIT(CSETVIEW)
	m_pSet = NULL;
	m_XIANGMU = -1;
	m_NAME = _T("");
	m_DELETENAME = _T("");
	//}}AFX_DATA_INIT
}

CSETVIEW::~CSETVIEW()
{
	if (m_pSet)
		delete m_pSet;
}

void CSETVIEW::DoDataExchange(CDataExchange* pDX)
{
	CRecordView::DoDataExchange(pDX);
	//{{AFX_DATA_MAP(CSETVIEW)
	DDX_Control(pDX, IDC_EDIT, m_ctrEDIT);
	DDX_Control(pDX, IDC_LIST1, m_LIST);
	DDX_Radio(pDX, IDC_XIANGMU, m_XIANGMU);
	DDX_Text(pDX, IDC_EDIT, m_NAME);
	DDX_LBString(pDX, IDC_LIST1, m_DELETENAME);
	//}}AFX_DATA_MAP
}


BEGIN_MESSAGE_MAP(CSETVIEW, CRecordView)
	//{{AFX_MSG_MAP(CSETVIEW)
	ON_WM_CTLCOLOR()
	ON_BN_CLICKED(IDC_XIANGMU, OnXiangmu)
	ON_BN_CLICKED(IDC_ADD, OnAdd)
	ON_BN_CLICKED(IDC_R_JCLX, OnRJclx)
	ON_BN_CLICKED(IDC_R_XUELI, OnRXueli)
	ON_BN_CLICKED(IDC_R_ZHW, OnRZhw)
	ON_BN_CLICKED(IDC_DELETE, OnDelete)
	ON_EN_SETFOCUS(IDC_EDIT, OnSetfocusEdit)
	//}}AFX_MSG_MAP
END_MESSAGE_MAP()

/////////////////////////////////////////////////////////////////////////////
// CSETVIEW diagnostics

#ifdef _DEBUG
void CSETVIEW::AssertValid() const
{
	CRecordView::AssertValid();
}

void CSETVIEW::Dump(CDumpContext& dc) const
{
	CRecordView::Dump(dc);
}
#endif //_DEBUG

/////////////////////////////////////////////////////////////////////////////
// CSETVIEW message handlers

CRecordset* CSETVIEW::OnGetRecordset()
{
	if (m_pSet != NULL)
		return m_pSet;

	m_pSet = new CSETSET(NULL);
	m_pSet->Open();

	return m_pSet;
}

CSETSET* CSETVIEW::GetRecordset()
{
	CSETSET* pData = (CSETSET*) OnGetRecordset();
	ASSERT(pData == NULL || pData->IsKindOf(RUNTIME_CLASS(CSETSET)));
	return pData;
}
int setflag=0;
void CSETVIEW::OnInitialUpdate()
{
	BeginWaitCursor();
	GetRecordset();
	CRecordView::OnInitialUpdate();
	if (m_pSet->IsOpen())
	{
		CString strTitle = m_pSet->m_pDatabase->GetDatabaseName();
		CString strTable = m_pSet->GetTableName();
		if (!strTable.IsEmpty())
			strTitle += _T(":") + strTable;
		GetDocument()->SetTitle(strTitle);
	}
	m_XIANGMU=0;
	InitList();
	m_NAME="在此输入项目名称:";
	UpdateData(FALSE);
	if(setflag==0)
	{
		m_LEFT.AutoLoad(IDC_ADD,this);
		m_RIGHT.AutoLoad(IDC_DELETE,this);
		m_LEFT.m_pbtn=(CSAMBTN*)this->GetDlgItem(IDC_ADD);
		m_RIGHT.m_pbtn=(CSAMBTN*)this->GetDlgItem(IDC_DELETE);
		setflag=1;
	}
	EndWaitCursor();
	

}

HBRUSH CSETVIEW::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor) 
{
	HBRUSH hbr = CRecordView::OnCtlColor(pDC, pWnd, nCtlColor);
	if(nCtlColor   ==   CTLCOLOR_DLG)   
	{   
        //返回对话框的颜色   
		hbr=(HBRUSH)::CreateSolidBrush(RGB(0,255,255));     
	}  
	
	HBRUSH hbr0=(HBRUSH)::GetStockObject(NULL_BRUSH); 
	if(nCtlColor==CTLCOLOR_STATIC)   
	{   
		//让静态文本框透明   
		pDC->SetBkMode(TRANSPARENT);   
		pDC->SetTextColor(RGB(0,255,255));   //设置字体颜色天蓝色   
		HBRUSH hbr0=(HBRUSH)::GetStockObject(NULL_BRUSH);  
		return hbr0 ;
	}   
	if(nCtlColor==CTLCOLOR_EDIT)   
	{   
		//让文本框不透明   
		pDC->SetBkMode(2);   
		pDC->SetBkColor(RGB(0,0,0));
		pDC->SetTextColor(RGB(0,255,255));   //设置字体颜色天蓝色   
		HBRUSH hbr0=(HBRUSH)::GetStockObject(NULL_BRUSH);  
		return hbr0 ;
	}   
	if(nCtlColor==2)   
	{   
		//让文本框不透明   
		pDC->SetBkMode(2);   
		pDC->SetBkColor(RGB(0,0,0));
		pDC->SetTextColor(RGB(0,255,255));   //设置字体颜色天蓝色   
		HBRUSH hbr0=(HBRUSH)::CreateSolidBrush(RGB(0,0,0));     
		return hbr0 ;
	}   
	return hbr ;
}

void CSETVIEW::OnXiangmu() 
{
	// TODO: Add your control notification handler code here
	m_XIANGMU=0;
	InitList();
	
	
}

void CSETVIEW::EmptyList()
{
	CString strtmp;
	int i=m_LIST.GetCount();
	while(i)
	{
		m_LIST.DeleteString(0);
		i=m_LIST.GetCount();
	}

}

void CSETVIEW::OnAdd() 
{
	// TODO: Add your control notification handler code here
	UpdateData();
	if(m_NAME==""||m_NAME=="在此输入项目名称:")
	{
		MessageBox("请输入项目名称!");
	}
	else
	{
		CDatabase db;
		db.Open("sam人事管理");
		CString strSQL;
		switch(m_XIANGMU)
		{
		case 0:
			strSQL="insert into 人事变更类型  values ('','"+m_NAME+"')";
			break;
		case 1:
			strSQL="insert into 奖惩类型  values ('"+m_NAME+"')";
			break;
		case 2:
			strSQL="insert into 学历 (EDU_LEVEL) values ('"+m_NAME+"')";
			break;
		case 3:
			strSQL="insert into 职务 (SHUOMING) values ('"+m_NAME+"')";
			break;
		}
		db.ExecuteSQL(strSQL);
		db.Close();
		InitList();
		m_NAME="在此输入项目名称:";
		UpdateData(FALSE);
	}
}

void CSETVIEW::OnRJclx() 
{
	// TODO: Add your control notification handler code here
	m_XIANGMU=1;
	InitList();

}

void CSETVIEW::OnRXueli() 
{
	// TODO: Add your control notification handler code here
	m_XIANGMU=2;
	InitList();
	
}

void CSETVIEW::OnRZhw() 
{
	// TODO: Add your control notification handler code here
	m_XIANGMU=3;
	InitList();
	
}

void CSETVIEW::InitList()
{
	switch(m_XIANGMU)
	{
	case 0:
		{
			EmptyList();
			CDatabase db;
			db.Open("sam人事管理");
			CRecordset rs(&db);
			CString strtmp;
			rs.Open(CRecordset::forwardOnly,"select SHUOMING from 人事变更类型 ");
			while(!rs.IsEOF())
			{
				rs.GetFieldValue("SHUOMING",strtmp);
				m_LIST.AddString(strtmp);
				UpdateData();
				rs.MoveNext();
			}
			rs.Close();
			db.Close();
			break;
		}
	case 1:
		{
			EmptyList();
			CDatabase db;
			db.Open("sam人事管理");
			CRecordset rs(&db);
			CString strtmp;
			rs.Open(CRecordset::forwardOnly,"select JCLX from 奖惩类型 ");
			while(!rs.IsEOF())
			{
				rs.GetFieldValue("JCLX",strtmp);
				m_LIST.AddString(strtmp);
				UpdateData();
				rs.MoveNext();
			}
			rs.Close();
			db.Close();
			break;
		}
	case 2:
		{
			EmptyList();
			CDatabase db;
			db.Open("sam人事管理");
			CRecordset rs(&db);
			CString strtmp;
			rs.Open(CRecordset::forwardOnly,"select EDU_LEVEL from 学历 ");
			while(!rs.IsEOF())
			{
				rs.GetFieldValue("EDU_LEVEL",strtmp);
				m_LIST.AddString(strtmp);
				UpdateData();
				rs.MoveNext();
			}
			rs.Close();
			db.Close();
			break;
		}
	case 3:
		{
			EmptyList();
			CDatabase db;
			db.Open("sam人事管理");
			CRecordset rs(&db);
			CString strtmp;
			rs.Open(CRecordset::forwardOnly,"select SHUOMING from 职务 ");
			while(!rs.IsEOF())
			{
				rs.GetFieldValue("SHUOMING",strtmp);
				m_LIST.AddString(strtmp);
				UpdateData();
				rs.MoveNext();
			}
			rs.Close();
			db.Close();
			break;
		}

		
	}
}

void CSETVIEW::OnDelete() 
{
	// TODO: Add your control notification handler code here
	UpdateData();
	CString strtmp;
	strtmp.TrimRight();
	strtmp.Format("真的要删除'%s'?",m_DELETENAME);
	if(m_DELETENAME=="")
	{
		MessageBox("请先选择项目");
	}
	else

		if(IDYES==MessageBox(strtmp,"确认",MB_YESNO))
	{		
		CDatabase db;
		db.Open("sam人事管理");
		CString strSQL;
		switch(m_XIANGMU)
		{
		case 0:
			strSQL="delete from 人事变更类型 where SHUOMING= '"+m_DELETENAME+"' ";
			break;
		case 1:
			strSQL="delete from 奖惩类型 where JCLX ='"+m_DELETENAME+"' ";
			break;
		case 2:
			strSQL="delete from 学历 where EDU_LEVEL ='"+m_DELETENAME+"' ";
			break;
		case 3:
			strSQL="delete from 职务 where SHUOMING = '"+m_DELETENAME+"' ";
			break;
		}
		db.ExecuteSQL(strSQL);
		db.Close();
		InitList();
		UpdateData(FALSE);
	}
}

void CSETVIEW::OnSetfocusEdit() 
{
	// TODO: Add your control notification handler code here
	m_ctrEDIT.SendMessage(EM_SETSEL,0,-1);
}

⌨️ 快捷键说明

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