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

📄 rkfhdlg.cpp

📁 这是一套学校设备管理系统的源码 里面有树形结构使用的很棒的方法
💻 CPP
📖 第 1 页 / 共 4 页
字号:
	CWnd *wn_ghdw;
	CWnd *wn_jfxs;
	CWnd *wn_yzf;
	CWnd *wn_rkn;
	CWnd *wn_rky;
	CWnd *wn_rkr;
	CWnd *wn_save;

    wn_sbmc = GetDlgItem(IDC_sbmc);
    wn_rkfs = GetDlgItem(IDC_rkfs);
    wn_sfdzp= GetDlgItem(IDC_sfdzp);
    wn_cjpp = GetDlgItem(IDC_cjpp);
    wn_xhgg = GetDlgItem(IDC_xhgg);
    wn_wpdj = GetDlgItem(IDC_wpdj);
    wn_wpsl = GetDlgItem(IDC_wpsl);
    wn_zje  = GetDlgItem(IDC_zje);
    wn_jbr  = GetDlgItem(IDC_jbr);
    wn_ghdw = GetDlgItem(IDC_ghdw);
    wn_ssbm = GetDlgItem(IDC_ssbm);
    wn_jfxs  = GetDlgItem(IDC_jfxs);
    wn_yzf  = GetDlgItem(IDC_yzf);
    wn_rkn  = GetDlgItem(IDC_rkn);
    wn_rky  = GetDlgItem(IDC_rky);
    wn_rkr  = GetDlgItem(IDC_rkr);
    wn_save = GetDlgItem(IDSAVE);
    

	if (cur_focus == 1){
		wn_rkfs->SetFocus();
		cur_focus = 2;
		return ;
    }
//	if (cur_focus == 2){
//		wn_sfdzp->SetFocus();
//		cur_focus = 3;
//		return ;
//    }
	if (cur_focus == 2){
		wn_cjpp->SetFocus();
		cur_focus = 4;
		return ;
    }
	if (cur_focus == 4){
		wn_xhgg->SetFocus();
		cur_focus = 5;
		return ;
    }
	if (cur_focus == 5){
		wn_wpdj->SetFocus();
		cur_focus = 6;
		return ;
    }
	if (cur_focus == 6){
		wn_wpsl->SetFocus();
		cur_focus = 7;
		return ;
    }
	if (cur_focus == 7){
		wn_zje->SetFocus();
		cur_focus = 8;
		return ;
    }
	if (cur_focus == 8){
		wn_jbr->SetFocus();
		cur_focus = 9;
		return ;
    }
	if (cur_focus == 9){
		wn_ghdw->SetFocus();
		cur_focus = 10;
		return ;
    }
	if (cur_focus == 10){
		wn_ssbm->SetFocus();
		cur_focus = 11;
		return ;
    }
	if (cur_focus == 11){
		wn_jfxs->SetFocus();
		cur_focus = 12;
		return ;
    }
	if (cur_focus == 12){
		wn_yzf->SetFocus();
		cur_focus = 13;
		return ;
    }
	if (cur_focus == 13){
		wn_rkn->SetFocus();
		cur_focus = 14;
		return ;
    }
	if (cur_focus == 14){
		wn_rky->SetFocus();
		cur_focus = 15;
		return ;
    }
	if (cur_focus == 15){
		wn_rkr->SetFocus();
		cur_focus = 16;
		return ;
    }
	if (cur_focus == 16){
		wn_save->SetFocus();
		cur_focus = 0;
		return ;
    }
	CDialog::OnOK();
}

void Crkfhdlg::OnSave() 
{
	// TODO: Add your control notification handler code here
   FILE *fpe;
   int num;
   long l;
   char buf[100];
   CString str;
   char b1[50],b2[50],b3[50],b4[50],b5[50],b6[50];
   CWnd *pwnd;
   long l1;
   double sls,djs;
   int i;
   
   l = mod_rec;
   l1 = m_yszm.GetRows();
   if (l1 <= l+1){
	   MessageBox("对不起,您没有选择要修改的纪录.","",MB_OK);
       error_flag = 1;
	   return ;
   }
   m_yszm.SetRow(l+1);
   m_yszm.SetCol(0L);
   str = m_yszm.GetText();
   if (str[0] == 0){
	   MessageBox("对不起,您没有选择要修改的纪录.","",MB_OK);
       error_flag = 1;
	   return ;
   }
   strcpy(kcbh,str.GetBuffer(10));
   for (i=0;i<strlen(kcbh);i++){
	   if (kcbh[i] == '*')
		   kcbh[i] = ' ';
   }
   trim(kcbh);

	GetDlgItemText(IDC_sbmc,buf,50);
	if (strlen(buf) == 0){
		MessageBox("没有输入具体设备名称,不能保存.",MB_OK);
	    pwnd = GetDlgItem(IDC_sbmc);
	    pwnd->SetFocus();	
        error_flag = 1;
		return ;
    }
	float f;
	int t;
	GetDlgItemText(IDC_wpdj,str);
	strcpy(buf,str.GetBuffer(14));
	f = atof(buf);
	djs = f;
	sprintf(buf,"%#.2f",f);
	if ((f < 0.001)||(strlen(buf) > 9)){
		MessageBox("物品单价错误.",MB_OK);
	    pwnd = GetDlgItem(IDC_wpdj);
	    pwnd->SetFocus();	
        error_flag = 1;
		return ;
    }
	SetDlgItemText(IDC_wpdj,buf);
	GetDlgItemText(IDC_wpsl,str);
	strcpy(buf,str.GetBuffer(14));
	f = atof(buf);
	sls = f;
	sprintf(buf,"%#.2f",f);
	if ((f < 0.001)||(strlen(buf) > 9)){
		MessageBox("物品数量错误.",MB_OK);
	    pwnd = GetDlgItem(IDC_wpsl);
	    pwnd->SetFocus();	
        error_flag = 1;
		return ;
    }
	if ((buf[strlen(buf)-1] == '0') && (buf[strlen(buf)-2] == '0')){
      l = f;
	  sprintf(buf,"%#ld",l);
    }
	SetDlgItemText(IDC_wpsl,buf);
	GetDlgItemText(IDC_zje,str);
	strcpy(buf,str.GetBuffer(14));

	double ff;
	ff = atof(buf);
	if (ff < 0.1){
		ff = djs * sls;
    }

	sprintf(buf,"%#.2lf",ff);
	if ((ff < 0.001)||(strlen(buf) > 12)||(fabs(ff-djs*sls) > 0.1)){
		MessageBox("总金额错误.",MB_OK);
	    pwnd = GetDlgItem(IDC_zje);
	    pwnd->SetFocus();	
        error_flag = 1;
		return ;
    }
	SetDlgItemText(IDC_zje,buf);
	GetDlgItemText(IDC_wpdj,buf,20);
	GetDlgItemText(IDC_rkfs,str);
	strcpy(buf,str.GetBuffer(22));
	if ((strlen(buf) == 0)||(strlen(buf) >= 20)){
		MessageBox("入库方式错误.",MB_OK);
	    pwnd = GetDlgItem(IDC_rkfs);
	    pwnd->SetFocus();	
        error_flag = 1;
		return ;
    }
	GetDlgItemText(IDC_ssbm,str);
	strcpy(buf,str.GetBuffer(42));
	if ((strlen(buf) == 0)||(strlen(buf) >= 40)){
		MessageBox("所属部门错误.",MB_OK);
	    pwnd = GetDlgItem(IDC_ssbm);
	    pwnd->SetFocus();	
        error_flag = 1;
		return ;
    }
	GetDlgItemText(IDC_jbr,str);
	strcpy(buf,str.GetBuffer(12));
	if ((strlen(buf) == 0)||(strlen(buf) > 10)){
		MessageBox("经办人错误.",MB_OK);
	    pwnd = GetDlgItem(IDC_jbr);
	    pwnd->SetFocus();	
        error_flag = 1;
		return ;
    }
	GetDlgItemText(IDC_rkn,str);
	strcpy(buf,str.GetBuffer(6));
	t = atoi(buf);
	if ((t < 1990)||(t > 2100)){
		MessageBox("入库年份错误.",MB_OK);
	    pwnd = GetDlgItem(IDC_rkn);
	    pwnd->SetFocus();	
        error_flag = 1;
		return ;
    }
	GetDlgItemText(IDC_rky,str);
	strcpy(buf,str.GetBuffer(4));
	t = atoi(buf);
	if ((t < 1)||(t > 12)){
		MessageBox("入库月份错误.",MB_OK);
	    pwnd = GetDlgItem(IDC_rky);
	    pwnd->SetFocus();	
        error_flag = 1;
		return ;
    }
	GetDlgItemText(IDC_rkr,str);
	strcpy(buf,str.GetBuffer(4));    
	t = atoi(buf);
	if ((t < 1)||(t > 31)){
		MessageBox("入库日期错误.",MB_OK);
	    pwnd = GetDlgItem(IDC_rkr);
	    pwnd->SetFocus();	
        error_flag = 1;
		return ;
    }

   fpe = fopen("c:\\xxsbgl\\sbrk.dat","r+b");
   if (fpe != NULL){
		fseek(fpe,0L,SEEK_END);
		l = ftell(fpe);
		num = l/453;
		l = order_of_recs[mod_rec] * 453L;
		fseek(fpe,l,SEEK_SET);
		strcpy(tzm.reserve,"");
        GetDlgItemText(IDC_jfxs,buf,4);
		strcpy(tzm.jfxs,buf);
        GetDlgItemText(IDC_yzf,buf,10);
		strcpy(tzm.yzf,buf);
        strcpy(tzm.rkbh,kcbh);
	    GetDlgItemText(IDC_byjx,str);
	    strcpy(buf,str.GetBuffer(10));
		trim(buf);
        strcpy(tzm.pyjx,buf);
	    GetDlgItemText(IDC_gdbh,str);
	    strcpy(buf,str.GetBuffer(10));
        strcpy(tzm.gdbh,buf);
	    GetDlgItemText(IDC_yqdm,str);
	    strcpy(buf,str.GetBuffer(40));
        strcpy(tzm.yqdm,buf);
	    GetDlgItemText(IDC_sbmc,str);
	    strcpy(buf,str.GetBuffer(50));
        strcpy(tzm.sbmc,buf);
	    GetDlgItemText(IDC_scdm,str);
	    strcpy(buf,str.GetBuffer(40));
        strcpy(tzm.scdm,buf);
	    GetDlgItemText(IDC_cjpp,str);
	    strcpy(buf,str.GetBuffer(40));
        strcpy(tzm.cjpp,buf);
	    GetDlgItemText(IDC_xhgg,str);
	    strcpy(buf,str.GetBuffer(40));
        strcpy(tzm.xhgg,buf);
	    GetDlgItemText(IDC_wpdj,str);
	    strcpy(buf,str.GetBuffer(15));
        strcpy(tzm.wpdj,buf);
	    GetDlgItemText(IDC_wpsl,str);
	    strcpy(buf,str.GetBuffer(15));
        strcpy(tzm.wpsl,buf);
	    GetDlgItemText(IDC_zje,str);
	    strcpy(buf,str.GetBuffer(15));
        strcpy(tzm.zje,buf);
	    GetDlgItemText(IDC_rkfs,str);
	    strcpy(buf,str.GetBuffer(20));
        strcpy(tzm.rkfs,buf);
	    GetDlgItemText(IDC_ssbm,b1,40);
        strcpy(tzm.ssbm,b1);
	    GetDlgItemText(IDC_jbr,b2,10);
        strcpy(tzm.jbr,b2);
	    GetDlgItemText(IDC_ghdw,b3,40);
        strcpy(tzm.ghdw,b3);
	    GetDlgItemText(IDC_rkn,b4,6);
        strcpy(tzm.rkn,b4);
	    GetDlgItemText(IDC_rky,b5,4);
        strcpy(tzm.rky,b5);
	    GetDlgItemText(IDC_rkr,b6,4);
        strcpy(tzm.rkr,b6);
	    UpdateData(TRUE);
	    if (m_sfdzp){
		  strcpy(buf,"是");
		}
	    else{
		  strcpy(buf,"否");
		}
        strcpy(tzm.sfdzp,buf);

		fwrite(&(tzm.reserve[0]),sizeof(zmstrt),1,fpe);

        fclose(fpe);
   }

   l = mod_rec + 1;
   m_yszm.SetRow(l);
   m_yszm.SetCol(1L);
   GetDlgItemText(IDC_sbmc,buf,40);
   m_yszm.SetText(buf);
   m_yszm.SetCol(2L);
   GetDlgItemText(IDC_wpdj,buf,40);
   m_yszm.SetText(buf);
   m_yszm.SetCol(3L);
   GetDlgItemText(IDC_wpsl,buf,40);
   m_yszm.SetText(buf);
   m_yszm.SetCol(4L);
   GetDlgItemText(IDC_zje,buf,40);
   m_yszm.SetText(buf);
   m_yszm.SetCol(5L);
   GetDlgItemText(IDC_rkn,b1,40);
   GetDlgItemText(IDC_rky,b2,40);
   GetDlgItemText(IDC_rkr,b3,40);
   strcpy(buf,b1);
   strcat(buf,"年");
   strcat(buf,b2);
   strcat(buf,"月");
   strcat(buf,b3);
   strcat(buf,"日");
   m_yszm.SetText(buf);
   m_yszm.SetCol(6L);
   GetDlgItemText(IDC_xhgg,buf,40);
   m_yszm.SetText(buf);
   m_yszm.SetCol(7L);
   GetDlgItemText(IDC_jbr,buf,40);
   m_yszm.SetText(buf);
   m_yszm.SetCol(8L);
   GetDlgItemText(IDC_gdbh,buf,40);
   m_yszm.SetText(buf);
   m_yszm.SetCol(10L);
   GetDlgItemText(IDC_cjpp,buf,40);
   m_yszm.SetText(buf);
   m_yszm.SetCol(11L);
   GetDlgItemText(IDC_ghdw,buf,40);
   m_yszm.SetText(buf);
   m_yszm.SetCol(12L);
   GetDlgItemText(IDC_ssbm,buf,40);
   m_yszm.SetText(buf);
   m_yszm.SetCol(13L);
   GetDlgItemText(IDC_rkfs,buf,40);
   m_yszm.SetText(buf);
   m_yszm.SetCol(14L);
   GetDlgItemText(IDC_jfxs,buf,40);
   m_yszm.SetText(buf);
   m_yszm.SetCol(15L);
   GetDlgItemText(IDC_yzf,buf,40);
   m_yszm.SetText(buf);
   m_yszm.SetCol(16L);
   GetDlgItemText(IDC_yqdm,buf,40);
   m_yszm.SetText(buf);
   m_yszm.SetCol(17L);
   GetDlgItemText(IDC_scdm,buf,40);
   m_yszm.SetText(buf);
   m_yszm.SetCol(18L);
   GetDlgItemText(IDC_byjx,buf,40);
   m_yszm.SetText(buf);
   m_yszm.SetCol(9L);
  
   if (IsDlgButtonChecked(IDC_sfdzp)){
     m_yszm.SetText("是");
   }
   else{
     m_yszm.SetText("否");
   }
   pwnd = GetDlgItem(IDC_sbmc);
   pwnd->SetFocus();	
   order_of_wpsl = order_of_wpdj = order_of_zje =0;	
}

BEGIN_EVENTSINK_MAP(Crkfhdlg, CDialog)
    //{{AFX_EVENTSINK_MAP(Crkfhdlg)
	ON_EVENT(Crkfhdlg, IDC_yszm, -600 /* Click */, OnClickyszm, VTS_NONE)
	//}}AFX_EVENTSINK_MAP
END_EVENTSINK_MAP()

void Crkfhdlg::OnClickyszm() 
{
	// TODO: Add your control notification handler code here
	long l;
	CString str;
	char buf[60];
	char buf1[60],buf2[60];
	int i,j;

	l = m_yszm.GetRowSel();
	if (old_sel_row > 0){
      m_yszm.SetRow(old_sel_row);
	  m_yszm.SetCol(0L);
	  strcpy(buf,old_sel_bh);
	  m_yszm.SetText(buf);
    }
    m_yszm.SetRow(l);
	m_yszm.SetCol(0L);
	str = m_yszm.GetText();
	strcpy(buf,str.GetBuffer(20));
	strcpy(buf2,buf);
	strcpy(old_sel_bh,buf);
	strcpy(buf1,"*  ");
	strcat(buf1,buf);
	m_yszm.SetText(buf1);
	old_sel_row = l;

    mod_rec = l - 1;
	m_yszm.SetRow(l);
	m_yszm.SetCol(0L);
	str = m_yszm.GetText();
	if (strcmp(str.GetBuffer(10),"") == 0){
	   MessageBox("对不起,您没有选择要修改的纪录.","",MB_OK);
		return ;
    }
	strcpy(kcbh,str.GetBuffer(6));
	m_yszm.SetCol(1L);
	str = m_yszm.GetText();
	strcpy(sbmc,str.GetBuffer(40));
	m_yszm.SetCol(2L);
	str = m_yszm.GetText();
	strcpy(wpdj,str.GetBuffer(10));
	m_yszm.SetCol(3L);
	str = m_yszm.GetText();
	strcpy(wpsl,str.GetBuffer(10));
	m_yszm.SetCol(4L);
	str = m_yszm.GetText();
	strcpy(zje,str.GetBuffer(14));
	m_yszm.SetCol(5L);
	str = m_yszm.GetText();
	strcpy(buf,str.GetBuffer(20));
	i = 0;
	while (buf[i] > 0){
		rkn[i] = buf[i];
		i ++;
    }
	if (buf[i] == 0){
		return ;
    }
	rkn[i] = 0;
	i += 2;
	j = 0;
	while (buf[i] > 0){
		rky[j] = buf[i];
		i ++;
		j ++;
    }
	if (buf[i] == 0){
		return ;
    }
	rky[j] = 0;
	i += 2;
	j = 0;
	while (buf[i] > 0){
		rkr[j] = buf[i];
		i ++;
		j ++;
    }
	if (buf[i] == 0){
		return ;
    }
	rkr[j] = 0;
	m_yszm.SetCol(6L);
	str = m_yszm.GetText();
	strcpy(xhgg,str.GetBuffer(14));
	m_yszm.SetCol(7L);
	str = m_yszm.GetText();
	strcpy(jbr,str.GetBuffer(6));
	m_yszm.SetCol(8L);
	str = m_yszm.GetText();
	strcpy(gdbh,str.GetBuffer(6));
	m_yszm.SetCol(9L);
	str = m_yszm.GetText();
	strcpy(sfdzp,str.GetBuffer(6));
	m_yszm.SetCol(10L);
	str = m_yszm.GetText();
	strcpy(cjpp,str.GetBuffer(6));
	m_yszm.SetCol(11L);
	str = m_yszm.GetText();
	strcpy(ghdw,str.GetBuffer(6));
	m_yszm.SetCol(12L);
	str = m_yszm.GetText();
	strcpy(ssbm,str.GetBuffer(6));
	m_yszm.SetCol(13L);
	str = m_yszm.GetText();
	strcpy(rkfs,str.GetBuffer(6));
	m_yszm.SetCol(14L);
	str = m_yszm.GetText();
	strcpy(jfxs,str.GetBuffer(4));
	m_yszm.SetCol(15L);
	str = m_yszm.GetText();
	strcpy(yzf,str.GetBuffer(12));
	m_yszm.SetCol(16L);
	str = m_yszm.GetText();
	strcpy(yqdm,str.GetBuffer(12));
	m_yszm.SetCol(17L);
	str = m_yszm.GetText();
	strcpy(scdm,str.GetBuffer(12));
	m_yszm.SetCol(18L);
	str = m_yszm.GetText();
	strcpy(pyjx,str.GetBuffer(12));
    
	SetDlgItemText(IDC_sbmc,sbmc);
	SetDlgItemText(IDC_wpdj,wpdj);
	SetDlgItemText(IDC_wpsl,wpsl);
	SetDlgItemText(IDC_zje,zje);
	SetDlgItemText(IDC_rkn,rkn);
	SetDlgItemText(IDC_rky,rky);
	SetDlgItemText(IDC_rkr,rkr);
	SetDlgItemText(IDC_xhgg,xhgg);
	SetDlgItemText(IDC_jbr,jbr);
	SetDlgItemText(IDC_gdbh,gdbh);
    if (strcmp(sfdzp,"是") == 0){
		CheckDlgButton(IDC_sfdzp,1);
    }
	else{
		CheckDlgButton(IDC_sfdzp,0);
    }
	SetDlgItemText(IDC_cjpp,cjpp);
	SetDlgItemText(IDC_ghdw,ghdw);
	SetDlgItemText(IDC_ssbm,ssbm);
	SetDlgItemText(IDC_rkfs,rkfs);
	SetDlgItemText(IDC_jfxs,jfxs);
	SetDlgItemText(IDC_yzf,yzf);
	SetDlgItemText(IDC_byjx,pyjx);
	SetDlgItemText(IDC_yqdm,yqdm);
	SetDlgItemText(IDC_scdm,scdm);

	m_yszm.SetCol(0L);

⌨️ 快捷键说明

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