📄 ctrainginfo.cpp
字号:
m_Comdept.SetFocus();
return;
}
int num1;
num1=atoi(Tcost);
if(num1<0)
{
MessageBox("您输入的培训费用不能小于0!请重新输入!","系统提示",MB_OK|MB_ICONSTOP);
m_EdtTcost.SetFocus();
return;
}
CString sSQL;
if(AddOrChange==1)//添加操作
sSQL.Format("Insert Into TrainingInfo Values('%s','%s','%s','%s','%s','%s','%s','%s','%s',%s,'%s','%s','%s')",TrainID,SName,SID,TName,Tcontent,Tunit,Taddress,timestart,timeover,Tcost,Tscore,Result,Remark);
else
sSQL.Format("Update TrainingInfo set Staff_name='%s',Staff_ID='%s',\
Training_name='%s',Training_content='%s',Training_units='%s',Training_sites='%s',\
Start_date='%s',End_date='%s',Training_costs=%s,Training_grade='%s',\
Training_results='%s',Remarks='%s' WHERE Training_ID='%s'",SName,SID,TName,\
Tcontent,Tunit,Taddress,timestart,timeover,Tcost,Tscore,Result,Remark,TrainID);
RxRecordset arst;
arst.Open(sSQL,adCmdText);
this->ButtonEnabled(false);
m_EdtSID.SetFocus();
}
void CCTraingInfo::OnButundo() //撤消该编辑操作081005XLW
{
// TODO: Add your control notification handler code here
if(MessageBox("确定要撤消操作吗?","系统提示",MB_OKCANCEL|MB_ICONQUESTION)!=1)
return;
this->ButtonEnabled(false);
this->ClearEdit();
this->DisPlayInfo(m_sID);
this->m_add.SetFocus();
}
void CCTraingInfo::OnButexit() //退出对话框编辑081005XLW
{
// TODO: Add your control notification handler code here
this->OnCancel();
}
BOOL CCTraingInfo::OnInitDialog()
{
CDialog::OnInitDialog();
// TODO: Add extra initialization here
CDBaseQuery* ParentWnd=(CDBaseQuery*)FindWindow(NULL,"员工培训基本信息");
m_sID=ParentWnd->m_Grid.GetItemText(ParentWnd->m_Grid.GetRow(),0);
RxRecordset rs,ts;
rs.Open("部门视图");
m_Comdept.SetRecordset(rs,"部门名称");
m_Comstaffdep.SetRecordset(rs,"部门名称");
ts.Open("select 部门名称 from 部门视图");
m_Comstaffdep.SetFieldset(ts);
m_Comdept.SetFieldset(ts);
m_Comstaffdep.SelectString(0,"所有部门");
this->m_Comdept.m_CurrentFieldType="字符型";
this->m_Comstaffdep.m_CurrentFieldType="字符型";
m_Sql_Grid.ReadOnly(true);
m_Sql_Grid.SetDataBase("员工查询视图",adCmdTable);
this->DisPlayInfo(m_sID);
return TRUE; // return TRUE unless you set the focus to a control
// EXCEPTION: OCX Property Pages should return FALSE
}
void CCTraingInfo::DisPlayInfo(CString sID)
{
CString sSQL;
RxRecordset drst;
if(sID.IsEmpty())
return;
sSQL.Format("SELECT * FROM 员工培训视图 WHERE 培训编号='%s'",sID);
drst.Open(sSQL,adCmdText);
if(drst.GetRecordCount()<1)
return;
CString TrainID,TName,SID,SName,Result,Taddress,Tcontent,Dept,Remark,Tcost,Tscore,Tunit,timestart,timeover;
TrainID=drst.GetFieldValue("培训编号");//培训编号
TName=drst.GetFieldValue("培训名称");//培训名称
SID=drst.GetFieldValue("员工编号");//员工编号
SName=drst.GetFieldValue("员工姓名");//员工姓名
Taddress=drst.GetFieldValue("培训地点");//培训地点
Tcontent=drst.GetFieldValue("培训内容");//培训内容
Dept=drst.GetFieldValue("部门");//部门
Remark=drst.GetFieldValue("备注");//备注
Tcost=drst.GetFieldValue("培训费用");//
Tscore=drst.GetFieldValue("培训成绩");//
Tunit=drst.GetFieldValue("培训单位");//
timestart=drst.GetFieldValue("开始日期");//
timeover=drst.GetFieldValue("结束日期");//
Result=drst.GetFieldValue("培训结果");
//////////////
m_EdtTID.SetWindowText(TrainID);
m_EdtTname.SetWindowText(TName);
m_EdtSID.SetWindowText(SID);
m_EdtSname.SetWindowText(SName);
m_Comdept.SetWindowText(Dept);
m_EdtTaddress.SetWindowText(Taddress);
m_EdtTcontent.SetWindowText(Tcontent);
m_EdtTcost.SetWindowText(Tcost);
m_EdtTscore.SetWindowText(Tscore);
m_EdtTunit.SetWindowText(Tunit);
m_EdtTresult.SetWindowText(Result);
m_Edtremark.SetWindowText(Remark);
////////////////////
CTime time1,time2;
time1=CStringTOCTime(timestart);
m_TimeStart.SetTime(&time1);
time2=CStringTOCTime(timeover);
m_TimeOver.SetTime(&time2);
m_EdtTID.SetColour(RGB(0,0,0));//设置编辑框边框颜色
m_EdtTname.SetColour(RGB(0,0,0));
m_EdtSID.SetColour(RGB(0,0,0));
m_EdtSname.SetColour(RGB(0,0,0));
// m_Edtdept.SetColour(RGB(0,0,0));
m_EdtTaddress.SetColour(RGB(0,0,0));
m_EdtTcontent.SetColour(RGB(0,0,0));
m_EdtTcost.SetColour(RGB(0,0,0));
m_EdtTscore.SetColour(RGB(0,0,0));
m_EdtTunit.SetColour(RGB(0,0,0));
m_EdtTresult.SetColour(RGB(0,0,0));
m_Edtremark.SetColour(RGB(0,0,0));
}
void CCTraingInfo::ClearEdit()//清空文本内容
{
m_EdtTID.SetWindowText("");
m_EdtTname.SetWindowText("");
m_EdtSID.SetWindowText("");
m_EdtSname.SetWindowText("");
// m_Edtdept.SetWindowText("");
m_EdtTaddress.SetWindowText("");
m_EdtTcontent.SetWindowText("");
m_EdtTcost.SetWindowText("");
m_EdtTscore.SetWindowText("");
m_EdtTunit.SetWindowText("");
m_Edtremark.SetWindowText("");
m_EdtTresult.SetWindowText("");
}
void CCTraingInfo::ButtonEnabled(bool bEnabled)
{
m_EdtstaffID.EnableWindow(bEnabled);
m_Edtstaffname.EnableWindow(bEnabled);
m_Comstaffdep.EnableWindow(bEnabled);
m_Sql_Grid.EnableWindow(bEnabled);
m_EdtTname.EnableWindow(bEnabled);
m_EdtSID.EnableWindow(bEnabled);
m_EdtSname.EnableWindow(bEnabled);
m_Comdept.EnableWindow(bEnabled);
m_EdtTaddress.EnableWindow(bEnabled);
m_EdtTcontent.EnableWindow(bEnabled);
m_EdtTcost.EnableWindow(bEnabled);
m_EdtTscore.EnableWindow(bEnabled);
m_EdtTunit.EnableWindow(bEnabled);
m_Edtremark.EnableWindow(bEnabled);
m_TimeStart.EnableWindow(bEnabled);
m_TimeOver.EnableWindow(bEnabled);
m_EdtTresult.EnableWindow(bEnabled);
////////////////////
m_add.EnableWindow(!bEnabled);
m_change.EnableWindow(!bEnabled);
m_delete.EnableWindow(!bEnabled);
m_exit.EnableWindow(!bEnabled);
m_save.EnableWindow(bEnabled);
m_undo.EnableWindow(bEnabled);
}
void CCTraingInfo::OnPaint()
{
CPaintDC dc(this); // device context for painting
// TODO: Add your message handler code here
CRect rect;
CBitmap bit;
CDC memDC;
this->GetClientRect(&rect);
bit.LoadBitmap(IDB_BIT_BJ);
memDC.CreateCompatibleDC(&dc);
memDC.SelectObject(&bit);
dc.BitBlt(0,0,rect.Width(),rect.Height(),&memDC,0,0,SRCCOPY);
memDC.DeleteDC();
::DeleteObject(&bit);
CDialog::OnPaint();
// Do not call CDialog::OnPaint() for painting messages
}
HBRUSH CCTraingInfo::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor)
{
HBRUSH hbr = CDialog::OnCtlColor(pDC, pWnd, nCtlColor);
// TODO: Change any attributes of the DC here
if(nCtlColor==CTLCOLOR_STATIC)
{
pDC->SetBkColor(RGB(255,255,255));
pDC->SetTextColor(RGB(0,0,0));
}
// TODO: Return a different brush if the default is not desired
return hbr;
}
void CCTraingInfo::OnBtnsel()
{
// TODO: Add your control notification handler code here
CString sSQL,sName,sSID,sSdep;
this->m_Edtstaffname.GetWindowText(sName);
this->m_EdtstaffID.GetWindowText(sSID);
this->m_Comstaffdep.GetWindowText(sSdep);
if(sSdep=="所有部门")
{
if(sName.IsEmpty() && sSID.IsEmpty())
sSQL.Format("SELECT * FROM 员工查询视图");
if(!sName.IsEmpty())
{
if(sSID.IsEmpty())
sSQL.Format("SELECT * FROM 员工查询视图 where 姓名 LIKE '%%%s%%'",sName);
else
sSQL.Format("SELECT * FROM 员工查询视图 where 编号 LIKE '%%%s%%' OR 姓名 LIKE '%%%s%%'",sSID,sName);
}
else
{
if(!sSID.IsEmpty())
sSQL.Format("SELECT * FROM 员工查询视图 where 编号 LIKE '%%%s%%'",sSID);
}
}
if(sSdep!="所有部门")
{
if(sName.IsEmpty() && sSID.IsEmpty())
sSQL.Format("SELECT * FROM 员工查询视图 where 部门='%s'",sSdep);
if(!sName.IsEmpty())
{
if(sSID.IsEmpty())
sSQL.Format("SELECT * FROM 员工查询视图 where 姓名 LIKE '%%%s%%' AND 部门='%s'",sName,sSdep);
else
sSQL.Format("SELECT * FROM 员工查询视图 where 编号 LIKE '%%%s%%' OR 姓名 LIKE '%%%s%%' AND 部门='%s'",sSID,sName,sSdep);
}
else
{
if(!sSID.IsEmpty())
sSQL.Format("SELECT * FROM 员工查询视图 where 编号 LIKE '%%%s%%' AND 部门='%s'",sSID,sSdep);
}
}
RxRecordset rRst;
rRst.Open(sSQL,adCmdText);
m_Sql_Grid.AddCellValue(rRst);
}
void CCTraingInfo::OnDblclkListGrid(NMHDR* pNMHDR, LRESULT* pResult)
{
// TODO: Add your control notification handler code here
RxRecordset rRst;
CString sSql,sname,sID,sdep;
if(m_Sql_Grid.GetHotItem()<0)
return;
m_tID=this->m_Sql_Grid.GetItemText(m_Sql_Grid.GetHotItem(),0);
sSql.Format("SELECT * FROM 员工查询视图 WHERE 编号='%s'",m_tID);
rRst.Open(sSql,adCmdText);
sID=rRst.GetFieldValue("编号");
sname=rRst.GetFieldValue("姓名");
sdep=rRst.GetFieldValue("部门");
m_EdtSID.SetWindowText(sID);
m_EdtSname.SetWindowText(sname);
m_Comdept.SetWindowText(sdep);
*pResult = 0;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -