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

📄 sbck.cpp

📁 这是一套学校设备管理系统的源码 里面有树形结构使用的很棒的方法
💻 CPP
📖 第 1 页 / 共 4 页
字号:
		return ;
    }

	fpe = fopen("c:\\xxsbgl\\sbckbh.txt","rb");
	if (fpe != NULL){
	  fscanf(fpe,"%ld",&g_end_of_sbck);
	  fclose(fpe);
    }
	else
      g_end_of_sbck = 0;

    
	g_end_of_sbck ++;
	fpe = fopen("c:\\xxsbgl\\sbckbh.txt","wb");
	fprintf(fpe,"%ld",g_end_of_sbck);
	fclose(fpe);  

	cur = i;

	fpe = fopen("c:\\xxsbgl\\sbck.dat","a+b");
	fseek(fpe,0L,SEEK_END);
	strcpy(sbckunit.reserve,"");
	GetDlgItemText(IDC_ckfx,str);
	strcpy(sbckunit.ckfx,str.GetBuffer(20));
	m_sbck.SetCol(0L);
	str = m_sbck.GetText();
    strcpy(sbckunit.rkbh,str.GetBuffer(11));
	if (sbckunit.rkbh[0] == '*')
      sbckunit.rkbh[0] = ' ';

	ltoa(g_end_of_sbck,buf,10);
    strcpy(sbckunit.ckbh,buf);

	GetDlgItemText(IDC_sbmc,str);
    strcpy(sbckunit.sbmc,str.GetBuffer(40));

	GetDlgItemText(IDC_gdbh,str);
    strcpy(sbckunit.gdbh,str.GetBuffer(11));

	GetDlgItemText(IDC_yqdm,str);
    strcpy(sbckunit.yqdm,str.GetBuffer(20));

	m_sbck.SetCol(12L);
	str = m_sbck.GetText();
    strcpy(sbckunit.ssbm,str.GetBuffer(30));
	
	GetDlgItemText(IDC_pyjx,str);
    strcpy(sbckunit.pyjx,str.GetBuffer(10));

	GetDlgItemText(IDC_ckfs,str);
    strcpy(sbckunit.ckfs,str.GetBuffer(20));

	GetDlgItemText(IDC_rkn,str);
    strcpy(sbckunit.ckn,str.GetBuffer(6));

	GetDlgItemText(IDC_rky,str);
    strcpy(sbckunit.cky,str.GetBuffer(6));

	GetDlgItemText(IDC_rkr,str);
    strcpy(sbckunit.ckr,str.GetBuffer(6));
    
	m_sbck.SetCol(2L);   
	str = m_sbck.GetText();
    strcpy(sbckunit.wpdj,str.GetBuffer(11));

	m_sbck.SetCol(3L);   
	str = m_sbck.GetText();
    strcpy(sbckunit.cksl,str.GetBuffer(11));

	m_sbck.SetCol(4L);   
	str = m_sbck.GetText();
    strcpy(sbckunit.zje,str.GetBuffer(11));

	GetDlgItemText(IDC_jbr,str);
    strcpy(sbckunit.jbr,str.GetBuffer(10));

	fwrite(&(sbckunit.reserve[0]),sizeof(sbckstrt),1,fpe);
	fclose(fpe);

	m_sbck.SetCol(3L);   
	sprintf(buf,"%#.2lf",ysl);
	if ((buf[strlen(buf)-1] == '0') && (buf[strlen(buf)-2] == '0')){
      l = ysl;
	  sprintf(buf,"%#ld",l);
    }
	m_sbck.SetText(buf);

    l = m_sbck.GetRowSel();
	for (i=l;i<end_result_recs;i++){
      l1 = i + 1;
	  m_sbck.SetRow(l1);
	  m_sbck.SetCol(0L);
	  str = m_sbck.GetText();
	  strcpy(kcbh,str.GetBuffer(12));
	  m_sbck.SetCol(1L);
	  str = m_sbck.GetText();
	  strcpy(sbmc,str.GetBuffer(50));
	  m_sbck.SetCol(2L);
	  str = m_sbck.GetText();
	  strcpy(wpdj,str.GetBuffer(12));
	  m_sbck.SetCol(3L);
	  str = m_sbck.GetText();
	  strcpy(wpsl,str.GetBuffer(12));
	  m_sbck.SetCol(4L);
	  str = m_sbck.GetText();
	  strcpy(zje,str.GetBuffer(14));
	  m_sbck.SetCol(5L);
	  str = m_sbck.GetText();
	  strcpy(rksj,str.GetBuffer(20));
	  m_sbck.SetCol(6L);
	  str = m_sbck.GetText();
	  strcpy(xhgg,str.GetBuffer(20));
	  m_sbck.SetCol(7L);
	  str = m_sbck.GetText();
	  strcpy(jbr,str.GetBuffer(10));
	  m_sbck.SetCol(8L);
	  str = m_sbck.GetText();
	  strcpy(gdbh,str.GetBuffer(10));
	  m_sbck.SetCol(9L);
	  str = m_sbck.GetText();
	  strcpy(sfdzp,str.GetBuffer(4));
	  m_sbck.SetCol(10L);
	  str = m_sbck.GetText();
	  strcpy(cjpp,str.GetBuffer(20));
	  m_sbck.SetCol(11L);
	  str = m_sbck.GetText();
	  strcpy(ghdw,str.GetBuffer(30));
	  m_sbck.SetCol(12L);
	  str = m_sbck.GetText();
	  strcpy(ssbm,str.GetBuffer(30));
	  m_sbck.SetCol(13L);
	  str = m_sbck.GetText();
	  strcpy(rkfs,str.GetBuffer(20));
	  m_sbck.SetCol(14L);
	  str = m_sbck.GetText();
	  strcpy(yqdm,str.GetBuffer(20));
	  m_sbck.SetCol(15L);
	  str = m_sbck.GetText();
	  strcpy(scdm,str.GetBuffer(20));
	  m_sbck.SetCol(16L);
	  str = m_sbck.GetText();
	  strcpy(pyjx,str.GetBuffer(10));

      l1 = i;
	  m_sbck.SetRow(l1);
	  m_sbck.SetCol(0L);
      m_sbck.SetText(kcbh);
	  m_sbck.SetCol(1L);
      m_sbck.SetText(sbmc);
	  m_sbck.SetCol(2L);
      m_sbck.SetText(wpdj);
	  m_sbck.SetCol(3L);
      m_sbck.SetText(wpsl);
	  m_sbck.SetCol(4L);
      m_sbck.SetText(zje);
	  m_sbck.SetCol(5L);
      m_sbck.SetText(rksj);
	  m_sbck.SetCol(6L);
      m_sbck.SetText(xhgg);
	  m_sbck.SetCol(7L);
      m_sbck.SetText(jbr);
	  m_sbck.SetCol(8L);
      m_sbck.SetText(gdbh);
	  m_sbck.SetCol(9L);
      m_sbck.SetText(sfdzp);
	  m_sbck.SetCol(10L);
      m_sbck.SetText(cjpp);
	  m_sbck.SetCol(11L);
      m_sbck.SetText(gdbh);
	  m_sbck.SetCol(12L);
      m_sbck.SetText(ssbm);
	  m_sbck.SetCol(13L);
      m_sbck.SetText(rkfs);
	  m_sbck.SetCol(14L);
      m_sbck.SetText(yqdm);
	  m_sbck.SetCol(15L);
      m_sbck.SetText(scdm);
	  m_sbck.SetCol(16L);
      m_sbck.SetText(pyjx);
    }

	l1 = end_result_recs;
	m_sbck.SetRow(l1);
	for (i=0;i<17;i++){
      l1 = i;
	  m_sbck.SetCol(l1);
	  m_sbck.SetText("");
    }
    
	end_result_recs --;
	if (l > end_result_recs){
		l = l-1;
    }

    old_sel_row = -1;
    m_sbck.SetRow(l);
	OnClicksbck();

	wnd = GetDlgItem(IDC_pyjx);
	wnd->SetFocus();	

}



void sbck::Onchaxun3() 
{
	// TODO: Add your control notification handler code here
	long l;
	int num,i,j,k;
	char bu[500];
	char bu1[500];
	char buf[100];
	float f,f1;
	FILE *fpe,*fpe1,*cfpe,*tofpe,*c1fpe;
	float sl,dj,je;
	int num1,num2;
	int t1,t2;
	char cond[20];
	int order;
	char mc[51];
	int end_of_sbck1_recs;
	char sbmc_buf[50];
	int flag1;

	end_result_recs = 0;
	m_sbck.SetRows(2L);
	m_sbck.SetRow(1L);
	for (l=0;l<=13;l++){
	  m_sbck.SetCol(l);
	  m_sbck.SetText("");
    }
	fpe = fopen("c:\\xxsbgl\\qczm.dat","rb");
	if (fpe == NULL)
		return ;
    fpe1 = fopen("c:\\xxsbgl\\sbrkzm.dat","rb");
    tofpe = fopen("c:\\xxsbgl\\dqzm.dat","wb");
	if (tofpe == NULL)
		return ;
    cfpe = fopen("c:\\xxsbgl\\sbckzm.dat","rb");
	if (cfpe == NULL){
	  end_of_sbck_recs = 0;
    }
	else{
	  fseek(cfpe,0L,SEEK_END);
	  l = ftell(cfpe);
	  num = l/280;
	  fseek(cfpe,0L,SEEK_SET);
      for (i=0;i<num;i++){
		  fread(&(sbckunit.reserve[0]),sizeof(sbckstrt),1,cfpe);
		  strcpy(ckbh,sbckunit.ckbh);
		  strcpy(wpdj,sbckunit.wpdj);
		  strcpy(sbmc,sbckunit.sbmc);
		  strcpy(cksl,sbckunit.cksl);
		  strcpy(ckfs,sbckunit.ckfs);
		  strcpy(zje,sbckunit.zje);
		  strcpy(ckn,sbckunit.ckn);
		  strcpy(cky,sbckunit.cky);
		  strcpy(ckr,sbckunit.ckr);
		  strcpy(jbr,sbckunit.jbr);
		  strcpy(yqdm,sbckunit.yqdm);
		  strcpy(ssbm,sbckunit.ssbm);
		  strcpy(gdbh,sbckunit.gdbh);
		  strcpy(pyjx,sbckunit.pyjx);
		  strcpy(ckfx,sbckunit.ckfx);
		  strcpy(rkbh,sbckunit.rkbh);
          strcpy(sbck_ckbh[i],ckbh);        
          strcpy(sbck_wpdj[i],wpdj);        
          strcpy(sbck_sbmc[i],sbmc);        
          strcpy(sbck_cksl[i],cksl);        
//          strcpy(sbck_ckfs[i],ckfs);        
          strcpy(sbck_zje[i],zje);        
//          strcpy(sbck_ckn[i],ckn);        
//          strcpy(sbck_cky[i],cky);        
//          strcpy(sbck_ckr[i],ckr);        
//          strcpy(sbck_jbr[i],jbr);        
//          strcpy(sbck_yqdm[i],yqdm);        
//          strcpy(sbck_ssbm[i],ssbm);        
          strcpy(sbck_gdbh[i],gdbh);        
//          strcpy(sbck_pyjx[i],pyjx);        
//          strcpy(sbck_ckfx[i],ckfx);        
          strcpy(sbck_rkbh[i],rkbh);        
      }
      end_of_sbck_recs = num;
	  fclose(cfpe);
	}
    c1fpe = fopen("c:\\xxsbgl\\sbck.dat","rb");
	if (c1fpe == NULL){
	  end_of_sbck1_recs = 0;
    }
	else{
	  fseek(c1fpe,0L,SEEK_END);
	  l = ftell(c1fpe);
	  num = l/280;
	  fseek(c1fpe,0L,SEEK_SET);
      for (i=0;i<num;i++){
		  fread(&(sbckunit.reserve[0]),sizeof(sbckstrt),1,cfpe);
		  strcpy(ckbh,sbckunit.ckbh);
		  strcpy(wpdj,sbckunit.wpdj);
		  strcpy(sbmc,sbckunit.sbmc);
		  strcpy(cksl,sbckunit.cksl);
		  strcpy(ckfs,sbckunit.ckfs);
		  strcpy(zje,sbckunit.zje);
		  strcpy(ckn,sbckunit.ckn);
		  strcpy(cky,sbckunit.cky);
		  strcpy(ckr,sbckunit.ckr);
		  strcpy(jbr,sbckunit.jbr);
		  strcpy(yqdm,sbckunit.yqdm);
		  strcpy(ssbm,sbckunit.ssbm);
		  strcpy(gdbh,sbckunit.gdbh);
		  strcpy(pyjx,sbckunit.pyjx);
		  strcpy(ckfx,sbckunit.ckfx);
		  strcpy(rkbh,sbckunit.rkbh);
          strcpy(sbck_ckbh[end_of_sbck_recs+i],ckbh);        
          strcpy(sbck_wpdj[end_of_sbck_recs+i],wpdj);        
          strcpy(sbck_sbmc[end_of_sbck_recs+i],sbmc);        
          strcpy(sbck_cksl[end_of_sbck_recs+i],cksl);        
//          strcpy(sbck_ckfs[i],ckfs);        
          strcpy(sbck_zje[end_of_sbck_recs+i],zje);        
//          strcpy(sbck_ckn[i],ckn);        
//          strcpy(sbck_cky[i],cky);        
//          strcpy(sbck_ckr[i],ckr);        
//          strcpy(sbck_jbr[i],jbr);        
//          strcpy(sbck_yqdm[i],yqdm);        
//          strcpy(sbck_ssbm[i],ssbm);        
          strcpy(sbck_gdbh[end_of_sbck_recs+i],gdbh);        
//          strcpy(sbck_pyjx[i],pyjx);        
//          strcpy(sbck_ckfx[i],ckfx);        
          strcpy(sbck_rkbh[end_of_sbck_recs+i],rkbh);        
      }
      end_of_sbck1_recs = num;
	  fclose(c1fpe);
	}

	end_of_sbck_recs += end_of_sbck1_recs;

	fseek(fpe,0L,SEEK_END);
	l = ftell(fpe);
	num1 = l/453;
	fseek(fpe,0L,SEEK_SET);
	if (fpe1 != NULL){
	  fseek(fpe1,0L,SEEK_END);
	  l = ftell(fpe1);
	  num2 = l/453;
	  fseek(fpe1,0L,SEEK_SET);
	}
	else
		num2 = 0;
	num = num1 + num2;
	GetDlgItemText(IDC_gdbh,cond,20);
	GetDlgItemText(IDC_sbmc,mc,50);
	trim(mc);
	num_of_yszm_recs = num1;
	num_of_sbrk_recs = num2;
	order = 0;
	l = num+2;
    m_sbck.SetRows(l);
	GetDlgItemText(IDC_sbmc,sbmc_buf,50);
    for (i=0;i<num;i++){
      if (i < num1)
	    fread(&(tzm.reserve[0]),sizeof(zmstrt),1,fpe);
      else
	    fread(&(tzm.reserve[0]),sizeof(zmstrt),1,fpe1);
	  strcpy(jfxs,tzm.jfxs);
	  strcpy(yzf,tzm.yzf);
	  strcpy(kcbh,tzm.rkbh);
	  strcpy(pyjx,tzm.pyjx);
	  strcpy(gdbh,tzm.gdbh);
	  strcpy(yqdm,tzm.yqdm);
	  strcpy(sbmc,tzm.sbmc);
	  strcpy(scdm,tzm.scdm);
	  strcpy(cjpp,tzm.cjpp);
	  strcpy(xhgg,tzm.xhgg);
	  strcpy(wpdj,tzm.wpdj);
	  strcpy(wpsl,tzm.wpsl);
	  strcpy(zje,tzm.zje);
	  strcpy(rkfs,tzm.rkfs);
	  strcpy(sfdzp,tzm.sfdzp);
	  strcpy(ssbm,tzm.ssbm);
	  strcpy(jbr,tzm.jbr);
	  strcpy(ghdw,tzm.ghdw);
	  strcpy(rkn,tzm.rkn);
	  strcpy(rky,tzm.rky);
	  strcpy(rkr,tzm.rkr);

	  trim(sbmc);
	  if (strstr(sbmc,sbmc_buf) != NULL){
	  sl = atof(wpsl);
	  for (j=0;j<end_of_sbck_recs;j++){
	    t1 = atoi(sbck_rkbh[j]);
        t2 = atoi(kcbh);
		flag1 = 0;
		if (t1 >= 10000){
			if (i >= num1){
				if (t1-10000 == t2)
					flag1 = 1;
            }   
        }
		else{
			if (i < num1){
				if (t1 == t2)
					flag1 = 1;
            }
        }
	    if (flag1 == 1){
		  f1 = atof(sbck_cksl[j]);
          sl -= f1;
        }
      }
	  if (sl > 0.001){
        order_of_result_recs[end_result_recs] = end_result_recs;
	    l = end_result_recs + 2;
//        m_sbck.SetRows(l);
		m_sbck.SetRow(l-1L);
		m_sbck.SetCol(0L);
		t1 = atoi(kcbh);
		if (i < num1){
			itoa(t1,kcbh,10);
        }
		else{
			itoa(t1+10000,kcbh,10);
        }
		m_sbck.SetText(kcbh);
		m_sbck.SetCol(1L);
		m_sbck.SetText(sbmc);
		m_sbck.SetCol(2L);
		m_sbck.SetText(wpdj);
		m_sbck.SetCol(3L);
		if ((gdbh[0] == '1')&&(gdbh[1] == '0')){
		  sprintf(wpsl,"%.2f",sl);
        }
		else{
          t1 = sl;
		  sprintf(wpsl,"%d",t1);
        }
		for (k=291-89;k<321-89;k++)
			bu[k] = ' ';
		for (k=0;k<strlen(wpsl);k++){
            bu[291-89+k] = wpsl[k];
        }
        bu[291-89+strlen(wpsl)] = '\n';
		m_sbck.SetText(wpsl);
		m_sbck.SetCol(4L);
		dj = atof(wpdj);
        je = dj*sl;
		sprintf(zje,"%.2f",je);
		for (k=0;k<strlen(zje);k++){
            bu[306-89+k] = zje[k];
        }
        bu[306-89+strlen(zje)] = '\n';
		m_sbck.SetText(zje);
		m_sbck.SetCol(5L);
		strcpy(buf,rkn);
		strcat(buf,"年");
		strcat(buf,rky);
		strcat(buf,"月");
		strcat(buf,rkr);
		strcat(buf,"日");
		m_sbck.SetText(buf);
		m_sbck.SetCol(6L);
		m_sbck.SetText(xhgg);
		m_sbck.SetCol(7L);
		m_sbck.SetText(jbr);
		m_sbck.SetCol(8L);
		m_sbck.SetText(gdbh);
		m_sbck.SetCol(9L);
		m_sbck.SetText(sfdzp);
		m_sbck.SetCol(10L);
		m_sbck.SetText(cjpp);
		m_sbck.SetCol(11L);
		m_sbck.SetText(ghdw);
		m_sbck.SetCol(12L);
		m_sbck.SetText(ssbm);
 		m_sbck.SetCol(13L);
		m_sbck.SetText(rkfs);
 		m_sbck.SetCol(14L);
		m_sbck.SetText(yqdm);
 		m_sbck.SetCol(15L);
		m_sbck.SetText(scdm);
 		m_sbck.SetCol(16L);
		m_sbck.SetText(pyjx);
        end_result_recs ++;
	    fwrite(bu1,89,1,tofpe);
	    fwrite(bu,453,1,tofpe);
      }
	  }
    }
    if (fpe != NULL)
      fclose(fpe);
    if (fpe1 != NULL)
	  fclose(fpe1);
	fclose(tofpe);
	old_sel_row = -1;
	
}


⌨️ 快捷键说明

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