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

📄 srhlform.cpp

📁 这是本人两年前兼职为某个公司做的石油钻进设计软件
💻 CPP
📖 第 1 页 / 共 2 页
字号:
	m_SJSR.SetAction(3);
	m_SJSR.SetFontName("宋体");
	m_SJSR.SetFontSize(12);

	m_SJSR.SetCol(3);
	m_SJSR.SetRow(1);
	m_SJSR.SetColWidth(3,12);
	m_SJSR.SetRowHeight(1,20);
	m_SJSR.SetValue("参数输入");

   //设置表格不可编辑
	for(i=1;i<=5;i++)
	   for(j=1;j<=9;j++)
	   {
			m_SJSR.SetCol(i);
			m_SJSR.SetRow(j);
		    m_SJSR.SetCellType(5);
	   }
	
   // 设置单元格线样式
   for(i=1;i<=5;i++)
	   for(j=2;j<=9;j++)
	   {
			m_SJSR.SetCol(i);
			m_SJSR.SetRow(j);
			m_SJSR.SetCellBorderType(16);//单元格为实框
			m_SJSR.SetCellBorderStyle(1);//实线
			m_SJSR.SetCellBorderColor(RGB(0,0,0));//单元格边框颜色
			m_SJSR.SetAction(16);//激活
	   }
	
	m_SJSR.SetCol(1);
	m_SJSR.SetRow(2);
	m_SJSR.SetColWidth(1,22);
	m_SJSR.SetRowHeight(2,20);
	m_SJSR.SetValue("参数名称");
    
	for(i=1;i<=8;i++)
	{
		m_SJSR.SetCol(1);
		m_SJSR.SetRow(i);
		m_SJSR.SetCellType(5);
	}
	m_SJSR.SetCol(1);
	m_SJSR.SetRow(3);
	m_SJSR.SetText("体系压力");
	m_SJSR.SetCol(1);
	m_SJSR.SetRow(4);
	m_SJSR.SetText("体系温度");
    m_SJSR.SetCol(1);
	m_SJSR.SetRow(5);
	m_SJSR.SetText("抑制剂移出浓度");
	m_SJSR.SetCol(1);
	m_SJSR.SetRow(6);
	m_SJSR.SetText("抑制剂加入浓度");
	m_SJSR.SetCol(1);
	m_SJSR.SetRow(7);
	m_SJSR.SetText("抑制剂入口处气相含水量");
	m_SJSR.SetCol(1);
	m_SJSR.SetRow(8);
	m_SJSR.SetText("抑制剂出口处气相含水量");
	m_SJSR.SetCol(1);
	m_SJSR.SetRow(9);
	m_SJSR.SetText("抑制剂种类");
	
	m_SJSR.SetCol(2);
	m_SJSR.SetRow(2);
	m_SJSR.SetColWidth(2,8);
	m_SJSR.SetRowHeight(2,20);
	m_SJSR.SetValue("单位");

    m_SJSR.SetCol(2);
	m_SJSR.SetRow(3);
	m_SJSR.SetText("MPa");
	m_SJSR.SetCol(2);
	m_SJSR.SetRow(4);
	m_SJSR.SetText("℃");
	m_SJSR.SetCol(2);
	m_SJSR.SetRow(5);
	m_SJSR.SetText("%");
	m_SJSR.SetCol(2);
	m_SJSR.SetRow(6);
	m_SJSR.SetText("%");
	m_SJSR.SetCol(2);
	m_SJSR.SetRow(7);
	m_SJSR.SetText("g/m^3");
	m_SJSR.SetCol(2);
	m_SJSR.SetRow(8);
	m_SJSR.SetText("g/m^3");
	m_SJSR.SetCol(2);
	m_SJSR.SetRow(9);
	m_SJSR.SetText("");

	m_SJSR.SetCol(3);
	m_SJSR.SetRow(2);
	m_SJSR.SetColWidth(3,8);
	m_SJSR.SetRowHeight(2,20);
	m_SJSR.SetValue("最小值");

    m_SJSR.SetCol(3);
	m_SJSR.SetRow(3);
	m_SJSR.SetText("0");
	m_SJSR.SetCol(3);
	m_SJSR.SetRow(4);
	m_SJSR.SetText("0");
	m_SJSR.SetCol(3);
	m_SJSR.SetRow(5);
	m_SJSR.SetText("0");
	m_SJSR.SetCol(3);
	m_SJSR.SetRow(6);
	m_SJSR.SetText("0");
	m_SJSR.SetCol(3);
	m_SJSR.SetRow(7);
	m_SJSR.SetText("0");
	m_SJSR.SetCol(3);
	m_SJSR.SetRow(8);
	m_SJSR.SetText("0");	
	m_SJSR.SetCol(3);
	m_SJSR.SetRow(9);
	m_SJSR.SetText("");

	m_SJSR.SetCol(4);
	m_SJSR.SetRow(2);
	m_SJSR.SetColWidth(4,8);
	m_SJSR.SetRowHeight(4,20);
	m_SJSR.SetValue("最大值");
    m_SJSR.SetCol(4);
	m_SJSR.SetRow(3);
	m_SJSR.SetText("70");
	m_SJSR.SetCol(4);
	m_SJSR.SetRow(4);
	m_SJSR.SetText("180");
	m_SJSR.SetCol(4);
	m_SJSR.SetRow(5);
	m_SJSR.SetText("100");
	m_SJSR.SetCol(4);
	m_SJSR.SetRow(6);
	m_SJSR.SetText("100");
	m_SJSR.SetCol(4);
	m_SJSR.SetRow(7);
	m_SJSR.SetText("1000");
	m_SJSR.SetCol(4);
	m_SJSR.SetRow(8);
	m_SJSR.SetText("1000");
	m_SJSR.SetCol(4);
	m_SJSR.SetRow(9);
	m_SJSR.SetText("");

	m_SJSR.SetCol(5);
	m_SJSR.SetRow(2);
	m_SJSR.SetColWidth(5,16);
	m_SJSR.SetRowHeight(5,20);
	m_SJSR.SetValue("参数值");
    for(i=3;i<=9;i++)
	{
		m_SJSR.SetRow(i);
		m_SJSR.SetCellType(2);
		m_SJSR.SetTypeFloatDecimalPlaces(5);
		m_SJSR.SetTypeFloatMin(0);
		m_SJSR.SetTypeFloatMax(99999);
	}	
	m_SJSR.SetCol(5);
	m_SJSR.SetRow(9);
	m_SJSR.SetCellType(8);
	m_SJSR.SetTypeComboBoxList("氯化钠、氯化钙\t甲醇");	

	m_SJSR.SetCol(3);
	m_SJSR.SetRow(11);
	m_SJSR.SetColWidth(3,10);
	m_SJSR.SetValue("计算结果");

	m_SJSR.SetCol(2);
	m_SJSR.SetRow(12);
	m_SJSR.SetColWidth(2,10);
	m_SJSR.SetRowHeight(12,20);
	m_SJSR.SetValue("抑制剂耗量");

	m_SJSR.SetCol(4);
	m_SJSR.SetRow(12);
	m_SJSR.SetCellType(5);
	m_SJSR.SetValue("g/m^3");

	m_SJSR.SetCol(2);
	m_SJSR.SetRow(12);
    m_SJSR.SetCol2(2);
	m_SJSR.SetRow2(12);
	m_SJSR.SetBlockMode(TRUE);
	m_SJSR.SetCellBorderType(16);
	m_SJSR.SetCellBorderStyle(1);
	m_SJSR.SetCellBorderColor(RGB(0,0,0));
	m_SJSR.SetAction(16);
    m_SJSR.SetBlockMode(FALSE);

	m_SJSR.SetCol(3);
	m_SJSR.SetRow(12);
    m_SJSR.SetCol2(3);
	m_SJSR.SetRow2(12);
	m_SJSR.SetBlockMode(TRUE);
	m_SJSR.SetCellBorderType(16);
	m_SJSR.SetCellBorderStyle(1);
	m_SJSR.SetCellBorderColor(RGB(0,0,0));
	m_SJSR.SetAction(16);
    m_SJSR.SetBlockMode(FALSE);

	m_SJSR.SetCol(4);
	m_SJSR.SetRow(12);
    m_SJSR.SetCol2(4);
	m_SJSR.SetRow2(12);
	m_SJSR.SetBlockMode(TRUE);
	m_SJSR.SetCellBorderType(16);
	m_SJSR.SetCellBorderStyle(1);
	m_SJSR.SetCellBorderColor(RGB(0,0,0));
	m_SJSR.SetAction(16);
    m_SJSR.SetBlockMode(FALSE);

    m_SJSR.SetRow(13);
    m_SJSR.SetValue("  ");	
*/	
}

void CSrhlForm::OnShwrjOpen() 
{
	CString fileDialogFilter1="抑制剂耗量预测(*.HLYC)|*.YLYC||";
	const char fileDialogExt1[] = "HLYC";
	CFileDialog fileDialog1(TRUE,fileDialogExt1,NULL,OFN_FILEMUSTEXIST, fileDialogFilter1);
    if(fileDialog1.DoModal()==IDOK)
	{
	    CString filename1=fileDialog1.GetPathName();//+fileDialog.GetFileName();		
	    m_SJSR.LoadFromFile(filename1);		
	}
    UpdateData(FALSE);		
	
}

void CSrhlForm::OnShwrjCalc() 
{
	 double w1, w2, kc, ck, p, t;
	 double S,a;
	 int  kk;
	 //a类——氯化钠、氯化钙
	 //B类——甲醇
	 //w1,w2——抑制剂入、出口处气相含水量,g/m^3
	 //kc——抑制剂移出浓度,%  查看
	 //ck——抑制剂加入浓度%
	 //p——体系压力,Mpa
	 //t——体系温度,k
	 //kk——类型
	 //输入参数kk,kc,ck,w1,w2,p,t
	 // 输出数据S(g/m^3)
     CString  Temp1,Temp2,Temp4,Temp5,Temp6,Temp7,Temp8;
     char  Temp3[30];
	 m_SJSR.SetCol(5);
     m_SJSR.SetRow(3);   
     Temp1=m_SJSR.GetText();
	 p= atof(Temp1);
     m_SJSR.SetRow(4);   
     Temp2=m_SJSR.GetText();
	 t= atof(Temp2);
	 m_SJSR.SetRow(5);   
     Temp4=m_SJSR.GetText();
	 kc = atof(Temp4);
	 m_SJSR.SetRow(6);   
     Temp5=m_SJSR.GetText();
	 ck = atof(Temp5);
	 m_SJSR.SetRow(7);   
     Temp6=m_SJSR.GetText();
	 w1= atof(Temp6);
	 m_SJSR.SetRow(8);   
     Temp7=m_SJSR.GetText();
	 w2= atof(Temp7);
	 m_SJSR.SetRow(9);   
     Temp8=m_SJSR.GetText();
	 if(Temp8=="氯化钠、氯化钙")
		 kk=1;
	 if(Temp8=="甲醇")
		 kk=2;
	 
//判断数据有效性
	  int i;
	  double zxz[10],zdz[10],qz[10];
	  for(i=3;i<=8;i++)
	  {
        m_SJSR.SetRow(i);
		m_SJSR.SetCol(3);
		zxz[i]=atof(m_SJSR.GetText());
		m_SJSR.SetCol(4);
		zdz[i]=atof(m_SJSR.GetText());
		m_SJSR.SetCol(5);
        qz[i]=atof(m_SJSR.GetText());
	  }
	  if(qz[3]>zxz[3]&&qz[3]<=zdz[3]&&qz[4]>zxz[4]&&qz[4]<=zdz[4]&&qz[5]>zxz[5]&&qz[5]<=zdz[5]&&qz[6]>zxz[6]&&qz[6]<=zdz[6]&&qz[7]>zxz[7]&&qz[7]<=zdz[7]&&qz[8]>zxz[8]&&qz[8]<=zdz[8])	  
	  {
			 switch(kk)
			 {
				case 1:
				  S = (w1 - w2) * kc / (ck - kc);
				  break;
				case 2:
				  a = 0.0197 * pow(p,-0.7) * exp(0.06054 * t - 11.128);
				  S = (w1 - w2) * kc / (ck - kc) + kc * 0.001 * a;
				  break;
			 }
			 //输出结果
		   gcvt(S,7,Temp3);
		   m_SJSR.SetCol(2);
		   m_SJSR.SetRow(12);
		   m_SJSR.SetValue(Temp3);
	  }
	  else
	  {
		  AfxMessageBox("数据非法,请验证后再计算。");
	  }
	
}

void CSrhlForm::OnShwrjSave() 
{
	UpdateData(TRUE);
	CString fileDialogFilter1="抑制剂耗量预测(*.HLYC)|*.YLYC||";
	const char fileDialogExt1[] = "HLYC";
	CFileDialog fileDialog1(FALSE,fileDialogExt1,NULL,OFN_FILEMUSTEXIST, fileDialogFilter1);
    if(fileDialog1.DoModal()==IDOK)
	{
	    CString filename1=fileDialog1.GetPathName();//+fileDialog.GetFileName();		
	    m_SJSR.SaveToFile(filename1,FALSE);		
	}	
	
}

void CSrhlForm::OnShwrjPrintpreview() 
{
	// TODO: Add your command handler code here
	CPreview dlg(&m_SJSR);
	dlg.DoModal();
	
}

void CSrhlForm::OnShwrjPrint() 
{
	// TODO: Add your command handler code here
    m_SJSR.SetAction(13);		
	
}

void CSrhlForm::OnContextMenu(CWnd*, CPoint point)
{
	// CG: This block was added by the Pop-up Menu component	{		if (point.x == -1 && point.y == -1){			//keystroke invocation			CRect rect;			GetClientRect(rect);			ClientToScreen(rect);			point = rect.TopLeft();			point.Offset(5, 5);		}		CMenu menu;		VERIFY(menu.LoadMenu(IDR_POPUP_SHWRJ));		CMenu* pPopup = menu.GetSubMenu(0);		ASSERT(pPopup != NULL);		CWnd* pWndPopupOwner = this;//		while (pWndPopupOwner->GetStyle() & WS_CHILD)//			pWndPopupOwner = pWndPopupOwner->GetParent();		pPopup->TrackPopupMenu(TPM_LEFTALIGN | TPM_RIGHTBUTTON, point.x, point.y,			pWndPopupOwner);	}
}

void CSrhlForm::OnSize(UINT nType, int cx, int cy) 
{
	CFormView::OnSize(nType, cx, cy);
	
	// TODO: Add your message handler code here
	if(m_SJSR.m_hWnd != NULL)
	{
		CRect rc;	
		GetClientRect(&rc);
		m_SJSR.SetWindowPos(NULL, rc.left, rc.top, rc.Width(), rc.Height(), NULL);
	}
	
}

⌨️ 快捷键说明

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