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

📄 yszmdlg.cpp

📁 这是一套学校设备管理系统的源码 里面有树形结构使用的很棒的方法
💻 CPP
📖 第 1 页 / 共 2 页
字号:
	fpe = fopen("c:\\xxsbgl\\yszm.dat","r+b");
	if (fpe == NULL){
		OnAdd();
		return;
	}
	fseek(fpe,0L,SEEK_END);
	l = ftell(fpe);
	all_num_of_recs = l/REC_LENGTH;
	if (g_cur_rec == all_num_of_recs){
		fclose(fpe);
		OnAdd();
		return;
	}
    fseek(fpe,(long)g_cur_rec*REC_LENGTH,SEEK_SET);

	buf[0] = 0;
	fwrite(buf,1,1,fpe);
	GetDlgItemText(IDC_sbmc,buf,60);
	fwrite(buf,60,1,fpe);
	GetDlgItemText(IDC_gdbh,buf,20);
	fwrite(buf,20,1,fpe);
	GetDlgItemText(IDC_yqdm,buf,20);
	fwrite(buf,20,1,fpe);
	GetDlgItemText(IDC_scdm,buf,20);
	fwrite(buf,20,1,fpe);
	GetDlgItemText(IDC_rkfs,buf,10);
	fwrite(buf,10,1,fpe);
	GetDlgItemText(IDC_cjpp,buf,20);
	fwrite(buf,20,1,fpe);
	GetDlgItemText(IDC_xhgg,buf,40);
	fwrite(buf,40,1,fpe);
	GetDlgItemText(IDC_wpdj,buf,40);
	ff = atof(buf);
	fwrite(&ff,4,1,fpe);
	GetDlgItemText(IDC_wpsl,buf,40);
	ff = atof(buf);
	fwrite(&ff,4,1,fpe);
	GetDlgItemText(IDC_zje,buf,40);
	ff = atof(buf);
	fwrite(&ff,4,1,fpe);
	GetDlgItemText(IDC_ssbm,buf,40);
	fwrite(buf,40,1,fpe);
	GetDlgItemText(IDC_jbr,buf,10);
	fwrite(buf,10,1,fpe);
	GetDlgItemText(IDC_ghdw,buf,60);
	fwrite(buf,60,1,fpe);
	GetDlgItemText(IDC_ygn,buf,40);
	tt = atoi(buf);
	fwrite(&tt,4,1,fpe);
	GetDlgItemText(IDC_ygy,buf,40);
	tt = atoi(buf);
	fwrite(&tt,4,1,fpe);
	GetDlgItemText(IDC_ygr,buf,40);
	tt = atoi(buf);
	fwrite(&tt,4,1,fpe);
	GetDlgItemText(IDC_rkn,buf,40);
	tt = atoi(buf);
	fwrite(&tt,4,1,fpe);
	GetDlgItemText(IDC_rky,buf,40);
	tt = atoi(buf);
	fwrite(&tt,4,1,fpe);
	GetDlgItemText(IDC_rkr,buf,40);
	tt = atoi(buf);
	fwrite(&tt,4,1,fpe);

	fclose(fpe);

}

void Cyszmdlg::OnNext() 
{
	// TODO: Add your control notification handler code here
	FILE *fpe;
	char buf[100];
	float ff;
	int tt;
	long l;
	int all_num_of_recs;

	fpe = fopen("c:\\xxsbgl\\yszm.dat","rb");
	if (fpe == NULL)
		return;
	fseek(fpe,0L,SEEK_END);
	l = ftell(fpe);
	all_num_of_recs = l/REC_LENGTH;
    fseek(fpe,(g_cur_rec+1L)*REC_LENGTH,SEEK_SET);
	if (g_cur_rec+1 < all_num_of_recs){
	fread(buf,1,1,fpe);
	fread(buf,60,1,fpe);
	SetDlgItemText(IDC_sbmc,buf);
	fread(buf,20,1,fpe);
	SetDlgItemText(IDC_gdbh,buf);
	fread(buf,20,1,fpe);
	SetDlgItemText(IDC_yqdm,buf);
	fread(buf,20,1,fpe);
	SetDlgItemText(IDC_scdm,buf);
	fread(buf,10,1,fpe);
	SetDlgItemText(IDC_rkfs,buf);
	fread(buf,20,1,fpe);
	SetDlgItemText(IDC_cjpp,buf);
	fread(buf,40,1,fpe);
	SetDlgItemText(IDC_xhgg,buf);
	fread(&ff,4,1,fpe);
	sprintf(buf,"%8.2f",ff);
	SetDlgItemText(IDC_wpdj,buf);
	fread(&ff,4,1,fpe);
	sprintf(buf,"%8.2f",ff);
	SetDlgItemText(IDC_wpsl,buf);
	fread(&ff,4,1,fpe);
	sprintf(buf,"%8.2f",ff);
	SetDlgItemText(IDC_zje,buf);
	fread(buf,40,1,fpe);
	SetDlgItemText(IDC_ssbm,buf);
	fread(buf,10,1,fpe);
	SetDlgItemText(IDC_jbr,buf);
	fread(buf,60,1,fpe);
	SetDlgItemText(IDC_ghdw,buf);
	fread(&tt,4,1,fpe);
	sprintf(buf,"%d",tt);
	SetDlgItemText(IDC_ygn,buf);
	fread(&tt,4,1,fpe);
	sprintf(buf,"%d",tt);
	SetDlgItemText(IDC_ygy,buf);
	fread(&tt,4,1,fpe);
	sprintf(buf,"%d",tt);
	SetDlgItemText(IDC_ygr,buf);
	fread(&tt,4,1,fpe);
	sprintf(buf,"%d",tt);
	SetDlgItemText(IDC_rkn,buf);
	fread(&tt,4,1,fpe);
	sprintf(buf,"%d",tt);
	SetDlgItemText(IDC_rky,buf);
	fread(&tt,4,1,fpe);
	sprintf(buf,"%d",tt);
	SetDlgItemText(IDC_rkr,buf);
	fclose(fpe);
	g_cur_rec ++;
	}
    
}



void Cyszmdlg::OnPrev() 
{
	// TODO: Add your control notification handler code here
	FILE *fpe;
	char buf[100];
	float ff;
	int tt;
	
	if (g_cur_rec > 0){
	  g_cur_rec --;
	  fpe = fopen("c:\\xxsbgl\\yszm.dat","rb");
	  if (fpe == NULL)
		return;
      fseek(fpe,(long)g_cur_rec*REC_LENGTH,SEEK_SET);
	  fread(buf,1,1,fpe);
	  fread(buf,60,1,fpe);
 	  SetDlgItemText(IDC_sbmc,buf);
	  fread(buf,20,1,fpe);
	  SetDlgItemText(IDC_gdbh,buf);
	  fread(buf,20,1,fpe);
	  SetDlgItemText(IDC_yqdm,buf);
	  fread(buf,20,1,fpe);
	  SetDlgItemText(IDC_scdm,buf);
	  fread(buf,10,1,fpe);
	  SetDlgItemText(IDC_rkfs,buf);
	  fread(buf,20,1,fpe);
	  SetDlgItemText(IDC_cjpp,buf);
	  fread(buf,40,1,fpe);
	  SetDlgItemText(IDC_xhgg,buf);
	  fread(&ff,4,1,fpe);
	  sprintf(buf,"%8.2f",ff);
	  SetDlgItemText(IDC_wpdj,buf);
	  fread(&ff,4,1,fpe);
	  sprintf(buf,"%8.2f",ff);
	  SetDlgItemText(IDC_wpsl,buf);
	  fread(&ff,4,1,fpe);
	  sprintf(buf,"%8.2f",ff);
	  SetDlgItemText(IDC_zje,buf);
	  fread(buf,40,1,fpe);
	  SetDlgItemText(IDC_ssbm,buf);
	  fread(buf,10,1,fpe);
	  SetDlgItemText(IDC_jbr,buf);
	  fread(buf,60,1,fpe);
	  SetDlgItemText(IDC_ghdw,buf);
	  fread(&tt,4,1,fpe);
	  sprintf(buf,"%d",tt);
	  SetDlgItemText(IDC_ygn,buf);
	  fread(&tt,4,1,fpe);
	  sprintf(buf,"%d",tt);
	  SetDlgItemText(IDC_ygy,buf);
	  fread(&tt,4,1,fpe);
	  sprintf(buf,"%d",tt);
	  SetDlgItemText(IDC_ygr,buf);
	  fread(&tt,4,1,fpe);
	  sprintf(buf,"%d",tt);
	  SetDlgItemText(IDC_rkn,buf);
	  fread(&tt,4,1,fpe);
	  sprintf(buf,"%d",tt);
	  SetDlgItemText(IDC_rky,buf);
	  fread(&tt,4,1,fpe);
	  sprintf(buf,"%d",tt);
	  SetDlgItemText(IDC_rkr,buf);
	  fclose(fpe);
    }
}




void Cyszmdlg::OnNew() 
{
	// TODO: Add your control notification handler code here

	char buf[100];
	char buf1[10];
	int all_num_of_recs;
	FILE *fpe;
	long l;
	int year,month,day;

    time_t ltime;    
	struct tm *pti;
	char tmpbuf[100];

//    _tzset();
    time(&ltime);    
	pti = gmtime(&ltime);
	year = pti->tm_year + 1900;
	month = 1 + pti->tm_mon;
	day = pti->tm_mday;

//    _strdate( tmpbuf );
	fpe = fopen("c:\\xxsbgl\\yszm.dat","rb");
	if (fpe != NULL){
	  fseek(fpe,0L,SEEK_END);
	  l = ftell(fpe);
	  all_num_of_recs = l/REC_LENGTH;
	  fclose(fpe);
	  g_cur_rec = all_num_of_recs;
	}
	else
		g_cur_rec = 0;
    buf[0] = 0;
	buf1[0] = '0';
	buf1[1] = 0;
	SetDlgItemText(IDC_sbmc,buf);
	SetDlgItemText(IDC_gdbh,buf);
	SetDlgItemText(IDC_yqdm,buf);
	SetDlgItemText(IDC_scdm,buf);
	SetDlgItemText(IDC_rkfs,buf);
	SetDlgItemText(IDC_cjpp,buf);
	SetDlgItemText(IDC_xhgg,buf);
	SetDlgItemText(IDC_wpdj,buf1);
	SetDlgItemText(IDC_wpsl,buf1);
	SetDlgItemText(IDC_zje,buf1);
	SetDlgItemText(IDC_ssbm,buf);
	SetDlgItemText(IDC_jbr,buf);
	SetDlgItemText(IDC_ghdw,buf);
	itoa(year,buf,10);
	m_ygn.SelectString(0,buf);
	itoa(month,buf,10);
	m_ygy.SelectString(0,buf);
	SetDlgItemText(IDC_ygy,buf);
	itoa(day,buf,10);
	m_ygr.SelectString(0,buf);
	itoa(year,buf,10);
	m_rkn.SelectString(0,buf);
	itoa(month,buf,10);
	m_rky.SelectString(0,buf);
	itoa(day,buf,10);
	m_rkr.SelectString(0,buf);
	
}

void Cyszmdlg::OnChangewpdj() 
{
	// TODO: If this is a RICHEDIT control, the control will not
	// send this notification unless you override the CDialog::OnInitDialog()
	// function to send the EM_SETEVENTMASK message to the control
	// with the ENM_CHANGE flag ORed into the lParam mask.
	
	// TODO: Add your control notification handler code here
	float sl,dj,zje;
	char buf[40];

	GetDlgItemText(IDC_wpsl,buf,40);
	sl = atof(buf);
	GetDlgItemText(IDC_wpdj,buf,40);
	dj = atof(buf);
	zje = sl*dj;
	sprintf(buf,"%8.2f",zje);
	SetDlgItemText(IDC_zje,buf);

	
}

void Cyszmdlg::OnChangewpsl() 
{
	// TODO: If this is a RICHEDIT control, the control will not
	// send this notification unless you override the CDialog::OnInitDialog()
	// function to send the EM_SETEVENTMASK message to the control
	// with the ENM_CHANGE flag ORed into the lParam mask.
	
	// TODO: Add your control notification handler code here
	float sl,dj,zje;
	char buf[40];

	GetDlgItemText(IDC_wpsl,buf,40);
	sl = atof(buf);
	GetDlgItemText(IDC_wpdj,buf,40);
	dj = atof(buf);
	zje = sl*dj;
	sprintf(buf,"%8.2f",zje);
	SetDlgItemText(IDC_zje,buf);
	
}

void Cyszmdlg::OnClickTree1(NMHDR* pNMHDR, LRESULT* pResult) 
{
	// TODO: Add your control notification handler code here
	*pResult = 0;
}

void Cyszmdlg::OnSelchangedTree1(NMHDR* pNMHDR, LRESULT* pResult) 
{
	NM_TREEVIEW* pNMTreeView = (NM_TREEVIEW*)pNMHDR;
	// TODO: Add your control notification handler code here
	HTREEITEM htreeitem;
	int i,j;
	char buf[100];
	CString str;

	htreeitem = m_tree.GetSelectedItem();
	if (g_old_htreeitem != htreeitem){
	   if (g_old_htreeitem != NULL){
		 m_tree.SetItemState(g_old_htreeitem,0,0xffff);
	   }
	}
	m_tree.Select(htreeitem,TVGN_FIRSTVISIBLE);
	m_tree.SetItemState(htreeitem,TVIS_DROPHILITED,0xffff);

    str = m_tree.GetItemText(htreeitem);
	strcpy(buf,str.GetBuffer(100));
	for (j=0;j<g_end_sbs;j++){
		if (strcmp(g_e_name[j],buf) == 0)
			i = j;
    }
	set_cur_sel(i);
	g_old_htreeitem = htreeitem;
	m_tree.Invalidate(TRUE);
	
	*pResult = 0;
}

void Cyszmdlg::OnSetfocusssbm() 
{
	// TODO: Add your control notification handler code here
	
    switch_to_chinese_mode(this);	
}

void Cyszmdlg::OnSetfocusbyjx() 
{
	// TODO: Add your control notification handler code here
	BOOL ret;
	HIMC himc;
	HWND hwnd;
	HWND himewnd;
	DWORD n1,n2;
	CWnd *pwnd;

	pwnd = GetDlgItem(IDC_byjx);
	hwnd = pwnd->m_hWnd;
	himc = ImmCreateContext(); 
	ret = ImmGetConversionStatus(himc,&n1,&n2);

    if (((n1 & 0x400) == 0x400)||((n2 & 1) == 1)){
      ret = ImmSimulateHotKey(hwnd,
		IME_CHOTKEY_IME_NONIME_TOGGLE);
	}
}


void Cyszmdlg::yield_a_row(char *buf)
{
	/*
	  char s1[100];
	  char buf1[100];

      strcpy(s1,m_sbmc.GetBuffer(30));
	  l = strlen(s1);
	  for (j=l;j<30;j++)
		  s1[j] = ' ';
	  s1[30] = 0;
	  strcpy(buf,s1);

      strcpy(s1,m_gdbh.GetBuffer(30));
	  l = strlen(s1);
	  for (j=l;j<30;j++)
		  s1[j] = ' ';
	  s1[10] = 0;
	  strcat(buf,s1);

	  strcpy(s1,m_rkfs.GetBuffer(10));
	  l = strlen(s1);
	  for (j=l;j<10;j++)
		  s1[j] = ' ';
	  s1[10] = 0;
	  strcat(buf,s1);

	  strcpy(s1,m_cjpp.GetBuffer(20));
	  l = strlen(s1);
	  for (j=l;j<20;j++)
		  s1[j] = ' ';
	  s1[10] = 0;
	  strcat(buf,s1);

	  
	  sprintf(buf1,"%8.2f",s1);
	  strcpy(buf1,m_dj.GetBuffer(8));
	  l = strlen(s1);
	  for (j=l;j<8;j++)
		  buf1[j] = ' ';
	  buf1[10] = 0;
	  strcat(buf,buf1);

	  sprintf(buf1,"%8.2f",s1);
	  strcpy(buf1,m_sl.GetBuffer(8));
	  l = strlen(s1);
	  for (j=l;j<8;j++)
		  buf1[j] = ' ';
	  buf1[10] = 0;
	  strcat(buf,buf1);

	  sprintf(buf1,"%10.2f",s1);
	  strcpy(buf1,m_zje.GetBuffer(10));
	  l = strlen(s1);
	  for (j=l;j<10;j++)
		  buf1[j] = ' ';
	  buf1[10] = 0;
	  strcat(buf,buf1);

	  strcpy(s1,m_jbr.GetBuffer(10));
	  l = strlen(s1);
	  for (j=l;j<10;j++)
		  s1[j] = ' ';
	  s1[10] = 0;
	  strcat(buf,s1);

	  strcpy(s1,m_ssbm.GetBuffer(20));
	  l = strlen(s1);
	  for (j=l;j<20;j++)
		  s1[j] = ' ';
	  s1[10] = 0;
	  strcat(buf,s1);

*/
}

⌨️ 快捷键说明

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