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

📄 czgqndlg.cpp

📁 用数据库ACCESS和VISUAL C++编程
💻 CPP
字号:
// Czgqndlg.cpp : implementation file
//

#include "stdafx.h"
#include "new3.h"
#include "Czgqndlg.h"
#include "Cgongziset.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif

/////////////////////////////////////////////////////////////////////////////
// CCzgqndlg dialog


CCzgqndlg::CCzgqndlg(CWnd* pParent /*=NULL*/)
	: CDialog(CCzgqndlg::IDD, pParent)
{
	//{{AFX_DATA_INIT(CCzgqndlg)
	m_chanxunid = _T("");
	m_quannianstatic = _T("");
	//}}AFX_DATA_INIT
}


void CCzgqndlg::DoDataExchange(CDataExchange* pDX)
{
	CDialog::DoDataExchange(pDX);
	//{{AFX_DATA_MAP(CCzgqndlg)
	DDX_Control(pDX, IDC_SELECTY, m_selecty);
	DDX_Control(pDX, IDOK, m_chaxunok);
	DDX_Control(pDX, IDC_CHAXUNGO, m_chaxun);
	DDX_Control(pDX, IDC_QUANNIANLIST, m_quannianlist);
	DDX_Text(pDX, IDC_CHANXUNID, m_chanxunid);
	DDX_Text(pDX, IDC_QUANNIANSTATIC, m_quannianstatic);
	//}}AFX_DATA_MAP
}


BEGIN_MESSAGE_MAP(CCzgqndlg, CDialog)
	//{{AFX_MSG_MAP(CCzgqndlg)
	ON_BN_CLICKED(IDC_CHAXUNGO, OnChaxungo)
	ON_EN_CHANGE(IDC_CHANXUNID, OnChangeChanxunid)
	ON_CBN_SELCHANGE(IDC_SELECTY, OnSelchangeSelecty)
	ON_BN_CLICKED(IDC_PRINT1, OnPrint1)
	//}}AFX_MSG_MAP
END_MESSAGE_MAP()

/////////////////////////////////////////////////////////////////////////////
// CCzgqndlg message handlers

BOOL CCzgqndlg::OnInitDialog() 
{
	CDialog::OnInitDialog();
   int index;
    CString sly;
   for(int h=1990;h<=2200;h++)
   {
       sly.Format("%d",h);
	   index=m_selecty.AddString(sly);
	   m_selecty.SetItemData(index,h);
   }
   m_selecty.SetCurSel(0);
	qnall_set.Open();
	qnall_set.MoveFirst(); 
	m_quannianlist.SetExtendedStyle(LVS_EX_FULLROWSELECT|LVS_EX_GRIDLINES);
	m_quannianlist.SetTextColor(RGB(0,0,255));
	qn_bitmap1.LoadBitmap(IDB_BITMAP11);
	m_chaxun.SetBitmap((HBITMAP)qn_bitmap1.m_hObject);

	qn_bitmap2.LoadBitmap(IDB_BITMAP10); 
	m_chaxunok.SetBitmap((HBITMAP)qn_bitmap2.m_hObject); 
///	SetDialogBkColor(RGB(109,139,241),RGB(0,0,0));
	// TODO: Add extra initialization here
	 //GetDlgItem(IDC_CHAXUNGO)->EnableWindow(false);
		m_quannianlist.InsertColumn ( 0, "编号", LVCFMT_CENTER, 40 );
		m_quannianlist.InsertColumn(1,"月份",LVCFMT_CENTER,20); 
	m_quannianlist.InsertColumn ( 2, "部门ID", LVCFMT_CENTER, 50 );
	m_quannianlist.InsertColumn ( 3, "部门名称", LVCFMT_LEFT,65 );
	m_quannianlist.InsertColumn ( 4, "职工ID", LVCFMT_LEFT, 60 );
	m_quannianlist .InsertColumn ( 5, "职工名字", LVCFMT_LEFT,60 );
	m_quannianlist.InsertColumn(6,"性别",LVCFMT_CENTER,40); 
	m_quannianlist .InsertColumn ( 7, "基本工资", LVCFMT_LEFT,60 );
	m_quannianlist .InsertColumn ( 8, "工龄工资", LVCFMT_LEFT, 60 );
	m_quannianlist.InsertColumn ( 9, "副食补贴", LVCFMT_CENTER, 60 );
	m_quannianlist.InsertColumn ( 10, "煤粮补贴", LVCFMT_LEFT,60 );
	m_quannianlist.InsertColumn ( 11, "交通补贴", LVCFMT_LEFT, 60 );
	m_quannianlist .InsertColumn ( 12, "补贴1", LVCFMT_LEFT,50 );
	m_quannianlist .InsertColumn ( 13, "补贴2", LVCFMT_LEFT,50 );
	m_quannianlist .InsertColumn ( 14, "补贴合计", LVCFMT_LEFT, 60 );
	m_quannianlist.InsertColumn ( 15, "应发工资", LVCFMT_CENTER, 60 );
	m_quannianlist.InsertColumn ( 16, "房费", LVCFMT_LEFT,40 );
	m_quannianlist.InsertColumn ( 17, "水电费", LVCFMT_LEFT, 60 );
	m_quannianlist .InsertColumn ( 18, "托儿费", LVCFMT_LEFT,60 );
	m_quannianlist .InsertColumn ( 19, "借支扣款", LVCFMT_LEFT,60 );
	m_quannianlist .InsertColumn ( 20, "其它扣款", LVCFMT_LEFT, 60 );
	m_quannianlist.InsertColumn ( 21, "扣款合计", LVCFMT_CENTER, 60 );
	m_quannianlist.InsertColumn ( 22, "实发工资", LVCFMT_LEFT,60 );
	m_quannianlist.InsertColumn ( 23, "备注", LVCFMT_LEFT, 40 );
	//if(qnall_set.IsEOF())
    
	//m_quannianlist .InsertColumn ( 3, "职工名字", LVCFMT_LEFT,60 );
	//m_quannianlist .InsertColumn ( 4, "基本工资", LVCFMT_LEFT,60 );
	//m_quannianlist .InsertColumn ( 5, "工龄工资", LVCFMT_LEFT, 60 );
	return TRUE;  // return TRUE unless you set the focus to a control
	              // EXCEPTION: OCX Property Pages should return FALSE
}

void CCzgqndlg::quannianlist()
{
     CCgongziset gzqn_set;
   char szBuffer [ 256 ];
   int k=0;
   CTime ti;
   CString str,strmySql,ss;
   UpdateData(true);
   m_quannianlist.DeleteAllItems(); 
   //strmySql="SELECT *FROM g WHERE flag=0 order by [timem]";
   //strmySql+=[timem]";
	//gzqn_set.Open(AFX_DB_USE_DEFAULT_TYPE,strmySql);
   gzqn_set.Open();
   gzqn_set.m_strSort="timem"; 
   gzqn_set.Requery();
   gzqn_set.MoveFirst();
   int i=0;	//m_lcRepeaterList . SetItemText ( nListEntry, 1, LPCTSTR ( m_setComplete . m_strFrequency ) );
   //y=ti.GetCurrentTime().GetYear() ;
//	 m=ti.GetCurrentTime().GetMonth();
   while(!gzqn_set.IsEOF() )
   {
	   if(gzqn_set.m_zhigongID==m_chanxunid)
		   if(gzqn_set.m_timey==select)
	   {
	//	y=gzqn_set.m_timey;
		//m=gzqn_set.m_timem; 
	   m_quannianlist.InsertItem (i,LPCTSTR ( ltoa (i+1, szBuffer, 10 )), 0 );
	   str.Format("%d",gzqn_set.m_timem); 
	   m_quannianlist.SetItemText(i,1,LPCTSTR(str)); 
	   m_quannianlist.SetItemText(i,2,LPCTSTR(gzqn_set.m_bumenID));
	   m_quannianlist.SetItemText(i,3,LPCTSTR(gzqn_set.m_bumenname ));
	   m_quannianlist.SetItemText(i,4,LPCTSTR(gzqn_set.m_zhigongID ));
	   m_quannianlist.SetItemText(i,5,LPCTSTR(gzqn_set.m_zhigongname ));
	   m_quannianlist.SetItemText(i,6,LPCTSTR(gzqn_set.m_sex)); 
	   str.Format("%.2f",gzqn_set.m_jibengongzi); 
	   m_quannianlist.SetItemText(i,7,LPCTSTR(str ));
	   str.Format("%.3f",gzqn_set.m_gonglinggongzi);
	   m_quannianlist.SetItemText(i,8,LPCTSTR(str));

	   str.Format("%.3f",gzqn_set.m_fushibutie );
	   m_quannianlist.SetItemText(i,9,LPCTSTR(str));
       
	   str.Format("%.3f",gzqn_set.m_meiliangbutie );
	   m_quannianlist.SetItemText(i,10,LPCTSTR(str));

	   str.Format("%.3f",gzqn_set.m_jiaotongbutie);
	   m_quannianlist.SetItemText(i,11,LPCTSTR(str));

	   str.Format("%.3f",gzqn_set.m_butie1 );
	   m_quannianlist.SetItemText(i,12,LPCTSTR(str));

	   str.Format("%.3f",gzqn_set.m_butie2);
	   m_quannianlist.SetItemText(i,13,LPCTSTR(str));

	   str.Format("%.3f",gzqn_set.m_butieheji );
	   m_quannianlist.SetItemText(i,14,LPCTSTR(str));

	   str.Format("%.3f",gzqn_set.m_yingfagongzi);
	   m_quannianlist.SetItemText(i,15,LPCTSTR(str));

	   str.Format("%.3f",gzqn_set.m_fangfei );
	   m_quannianlist.SetItemText(i,16,LPCTSTR(str));

	   str.Format("%.3f",gzqn_set.m_shuidianfei );
	   m_quannianlist.SetItemText(i,17,LPCTSTR(str));

	   str.Format("%.3f",gzqn_set.m_tuoerfei );
	   m_quannianlist.SetItemText(i,18,LPCTSTR(str));

	   str.Format("%.3f",gzqn_set.m_jiezhikoukuang );
	   m_quannianlist.SetItemText(i,19,LPCTSTR(str));

	   str.Format("%.3f",gzqn_set.m_qitakoukuang );
	   m_quannianlist.SetItemText(i,20,LPCTSTR(str));

	   str.Format("%.3f",gzqn_set.m_koukuangheji );
	   m_quannianlist.SetItemText(i,21,LPCTSTR(str));

	   str.Format("%.3f",gzqn_set.m_shifagongzi );
	   m_quannianlist.SetItemText(i,22,LPCTSTR(str));

	   m_quannianlist.SetItemText(i,23,LPCTSTR(gzqn_set.m_beizhu ));
	   i=i+1;
	   }
	   gzqn_set.MoveNext();
	   
   }
   if(i==0) MessageBox("不存在该职工ID或你所输入的年份不正确!");
   UpdateData(false);
}

void CCzgqndlg::OnChaxungo() 
{
	UpdateData();
	// TODO: Add your control notification handler code here
	if(m_chanxunid.IsEmpty())
	{
		MessageBox("不能为空!");
		return;
	}
	quannianlist();
}

void CCzgqndlg::OnChangeChanxunid() 
{
	// TODO: If this is a RICHEDIT control, the control will not
	// send this notification unless you override the CDialog::OnInitDialog()
	// function and call CRichEditCtrl().SetEventMask()
	// with the ENM_CHANGE flag ORed into the mask.
	GetDlgItem(IDC_CHAXUNGO)->EnableWindow(true);
	// TODO: Add your control notification handler code here
	
}

//DEL BOOL CCzgqndlg::DestroyWindow() 
//DEL {
//DEL 	// TODO: Add your specialized code here and/or call the base class
//DEL 	qn_bitmap1.DeleteObject();
//DEL 	qn_bitmap2.DeleteObject(); 
//DEL 	//
//DEL 	return CDialog::DestroyWindow();
//DEL 	//return 0;
//DEL }

void CCzgqndlg::OnSelchangeSelecty() 
{
	// TODO: Add your control notification handler code here
select=m_selecty.GetCurSel()+1990;

}

void CCzgqndlg::OnPrint1() 
{
	CCgongziset printset1;
int wide=39;
CString pstr;
printset1.Open();
printset1.MoveFirst();
	// TODO: Add your control notification handler code here
	char szprinter[80]; 
char *szDevice,*szDriver,*szOutput; 
HDC hdcprint; // 定义一个设备环境句柄 

static DOCINFO di={sizeof(DOCINFO),"printer",NULL}; 

GetProfileString("windows","device",",,,",szprinter,80); 
// 将设备字符串分解 
if(NULL!=(szDevice=strtok(szprinter,","))&& 
NULL!=(szDriver=strtok(NULL,","))&& 
NULL!=(szOutput=strtok(NULL,","))) 
// 创建一个打印机设备句柄 
if((hdcprint=CreateDC(szDriver,szDevice,szOutput,NULL))!=0) 
{ 
if(StartDoc(hdcprint,&di)>0) //开始执行一个打印作业 
{ 
StartPage(hdcprint); //打印机走纸,开始打印
SaveDC(hdcprint); //保存打印机设备句柄 
	// TODO: Add your control notification handler code here
	TextOut(hdcprint,350,1,"职工全年工资表",14); 
 TextOut(hdcprint,1,20,"部门ID",6);
 TextOut(hdcprint,51,20,"部门名",6);
 TextOut(hdcprint,101,20,"职工ID",6);
 TextOut(hdcprint,151,20,"职工名",6);
 TextOut(hdcprint,201,20,"性别",4);
 TextOut(hdcprint,251,20,"基本工资",8);
 TextOut(hdcprint,301,20,"工龄工资",8);
 TextOut(hdcprint,351,20,"副食补贴",8);
 TextOut(hdcprint,401,20,"煤粮补贴",8);
 TextOut(hdcprint,451,20,"交通补贴",8);
 TextOut(hdcprint,501,20,"补贴1",5);
 TextOut(hdcprint,551,20,"补贴2",5);
 TextOut(hdcprint,601,20,"补贴合计",8);
 TextOut(hdcprint,651,20,"应发工资",8);
 TextOut(hdcprint,701,20,"房费",4);
 TextOut(hdcprint,751,20,"水电费",6);
 TextOut(hdcprint,801,20,"托儿费",6);

TextOut(hdcprint,851,20,"借支扣款",8);
 TextOut(hdcprint,901,20,"其它扣款",8);
 TextOut(hdcprint,951,20,"扣款合计",8);
 TextOut(hdcprint,1001,20,"实发工资",8);
TextOut(hdcprint,1051,20,"备注",4);
//MessageBox(m_quannianlist.GetItemText(0,4));
while(!printset1.IsEOF())
{
	if(printset1.m_zhigongID==m_quannianlist.GetItemText(0,4) )
	{
         TextOut(hdcprint,1,wide,printset1.m_bumenID,strlen(printset1.m_bumenID ));
         TextOut(hdcprint,51,wide,printset1.m_bumenname,strlen(printset1.m_bumenname));
         TextOut(hdcprint,101,wide,printset1.m_zhigongID,strlen(printset1.m_zhigongID));
         TextOut(hdcprint,151,wide,printset1.m_zhigongname,strlen(printset1.m_zhigongname));
         TextOut(hdcprint,201,wide,printset1.m_sex,strlen(printset1.m_sex));
         pstr.Format("%f",printset1.m_jibengongzi); 
         TextOut(hdcprint,251,20,pstr,strlen(pstr));

		 pstr.Format("%f",printset1.m_gonglinggongzi ); 
         TextOut(hdcprint,301,20,pstr,strlen(pstr));

		 pstr.Format("%f",printset1.m_fushibutie); 
         TextOut(hdcprint,351,20,pstr,strlen(pstr));

         pstr.Format("%f",printset1.m_meiliangbutie); 
         TextOut(hdcprint,401,20,pstr,strlen(pstr));

		 pstr.Format("%f",printset1.m_jiaotongbutie); 
         TextOut(hdcprint,451,20,pstr,strlen(pstr));

		 pstr.Format("%f",printset1.m_butie1); 
         TextOut(hdcprint,501,20,pstr,strlen(pstr));

		 pstr.Format("%f",printset1.m_butie2); 
         TextOut(hdcprint,551,20,pstr,strlen(pstr));

		 pstr.Format("%f",printset1.m_butieheji); 
         TextOut(hdcprint,601,20,pstr,strlen(pstr));

		 pstr.Format("%f",printset1.m_yingfagongzi); 
         TextOut(hdcprint,651,20,pstr,strlen(pstr));

		 pstr.Format("%f",printset1.m_fangfei); 
         TextOut(hdcprint,701,20,pstr,strlen(pstr));

		 pstr.Format("%f",printset1.m_shuidianfei); 
         TextOut(hdcprint,751,20,pstr,strlen(pstr));

		 pstr.Format("%f",printset1.m_tuoerfei); 
         TextOut(hdcprint,801,20,pstr,strlen(pstr));

		 pstr.Format("%f",printset1.m_jiezhikoukuang); 
         TextOut(hdcprint,851,20,pstr,strlen(pstr));

		 pstr.Format("%f",printset1.m_qitakoukuang); 
         TextOut(hdcprint,901,20,pstr,strlen(pstr));

		 pstr.Format("%f",printset1.m_koukuangheji); 
         TextOut(hdcprint,951,20,pstr,strlen(pstr));

		 pstr.Format("%f",printset1.m_shifagongzi); 
         TextOut(hdcprint,1001,20,pstr,strlen(pstr));
         TextOut(hdcprint,1051,20,printset1.m_beizhu,strlen(printset1.m_beizhu));
	}
	wide+=19;
printset1.MoveNext(); 	

}
// 输出一条直线 
MoveToEx(hdcprint,20,20,NULL); 
LineTo(hdcprint,120,120); 
RestoreDC(hdcprint,-1); //恢复打印机设备句柄 
EndPage(hdcprint); //打印机停纸,停止打印 
EndDoc(hdcprint); //结束一个打印作业 
MessageBox("打印完毕!","提示",MB_ICONINFORMATION); 
} 
// 用API函数DeleteDC销毁一个打印机设备句柄 
DeleteDC(hdcprint); 

} 
else 
{ 
MessageBox("没有默认打印机,或者没有安装打印机!"); 
return; 
} 
}

⌨️ 快捷键说明

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