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

📄 tgcac.cpp

📁 这是本人两年前兼职为某个公司做的石油钻进设计软件
💻 CPP
字号:
// TGCac.cpp : implementation file
//

#include "stdafx.h"
#include "cvenus.h"
#include "TGCac.h"
#include	"MainFrm.h"

#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif

/////////////////////////////////////////////////////////////////////////////
// CTGCac

IMPLEMENT_DYNCREATE(CTGCac, CFormView)

CTGCac::CTGCac()
	: CFormView(CTGCac::IDD)
{
	//{{AFX_DATA_INIT(CTGCac)
		// NOTE: the ClassWizard will add member initialization here
	//}}AFX_DATA_INIT
}

CTGCac::~CTGCac()
{
}

void CTGCac::DoDataExchange(CDataExchange* pDX)
{
	CFormView::DoDataExchange(pDX);
	//{{AFX_DATA_MAP(CTGCac)
	DDX_Control(pDX, IDC_SPREAD2, m_ctrlSpread2);
	//}}AFX_DATA_MAP
}


BEGIN_MESSAGE_MAP(CTGCac, CFormView)
	//{{AFX_MSG_MAP(CTGCac)
	ON_WM_CREATE()
	ON_WM_SIZE()
	//}}AFX_MSG_MAP
END_MESSAGE_MAP()

/////////////////////////////////////////////////////////////////////////////
// CTGCac diagnostics

#ifdef _DEBUG
void CTGCac::AssertValid() const
{
	CFormView::AssertValid();
}

void CTGCac::Dump(CDumpContext& dc) const
{
	CFormView::Dump(dc);
}
#endif //_DEBUG

/////////////////////////////////////////////////////////////////////////////
// CTGCac message handlers

int CTGCac::OnCreate(LPCREATESTRUCT lpCreateStruct) 
{
	if (CFormView::OnCreate(lpCreateStruct) == -1)
		return -1;
	
    if(((CMainFrame*)AfxGetMainWnd())->m_TGProjectType==1)
		GetParentFrame()->SetWindowText(_T("生产套管强度校核-计算结果"));
	else
		GetParentFrame()->SetWindowText(_T("油管强度校核-计算结果"));
	
	return 0;
}


void CTGCac::OnInitialUpdate() 
{
	CFormView::OnInitialUpdate();
	
	// TODO: Add your specialized code here and/or call the base class
	m_pTGData = &(((CMainFrame*)AfxGetMainWnd())->m_TGData);
	
	// TODO: Add your specialized code here and/or call the base class
	int		i, j,ColWidth,TX[500][100];
    ColWidth=0;
	CString A,B;
	if(((CMainFrame*)AfxGetMainWnd())->m_TGProjectType==1)
	{
		for(i = 0; i<8; i++)
		{
			m_ctrlSpread2.SetRow(i+1);
			for(j = 0; j<2; j++)
			{
				m_ctrlSpread2.SetCol(j+1);
				m_ctrlSpread2.SetText(m_pTGData->m_grid1[i][j]);
			}
			for(j = 4; j<7; j++)
			{
				m_ctrlSpread2.SetCol(j-1);
				m_ctrlSpread2.SetText(m_pTGData->m_grid1[i][j]);
			}
		}
	}
	else
	{
		CStdioFile file;
		CString       strOpenFile,str; 
        strOpenFile = ((CCVenusApp*)AfxGetApp())->m_strAppPath +"\\tempfile.txt";
		if(!file.Open(strOpenFile, CFile::modeReadWrite | CFile::typeText) )
			return;
		file.Close();
				  m_ctrlSpread2.SetRow(-1);
				  m_ctrlSpread2.SetCol(-1);	
				  m_ctrlSpread2.SetAction(3);
				  m_ctrlSpread2.SetFontName("宋体");
				  m_ctrlSpread2.SetFontSize(12);
				  m_ctrlSpread2.LoadFromFile(strOpenFile);
                  m_ctrlSpread2.SetMaxRows(m_ctrlSpread2.GetMaxRows()+1);
                  m_ctrlSpread2.SetMaxCols(m_ctrlSpread2.GetMaxCols()+1);
				  m_ctrlSpread2.SetDisplayColHeaders(FALSE);
                  m_ctrlSpread2.SetDisplayRowHeaders(FALSE);
				  int ZHS=m_ctrlSpread2.GetMaxRows();
				  int ZLS=m_ctrlSpread2.GetMaxCols();   
				  for(j = 2;j<=ZLS;j++)
				  {
					m_ctrlSpread2.SetColWidth(j,26);
				  }
				  for(i = 1;i<=ZHS;i++)
				  {
					for(j = 1;j<=ZLS;j++)
					{
						  m_ctrlSpread2.SetCol(j);
						  m_ctrlSpread2.SetRow(i);
						  A = m_ctrlSpread2.GetText();
						  if(A == "")
						  {
							  TX[i][j] = 0;
						  }
						  else if (A.Find("$") == -1)
						  {
							m_ctrlSpread2.SetText(A);
							TX[i][j] = 16;
						  }
						  else
						  {
							int ZFWZ=A.Find("$");
							if (ZFWZ > 0)
							{
							  A.TrimLeft();
							  B = A.Left(1);
							  if( B == "." || B == "0" || B == "1" || B == "2" || B == "3" || B == "4" || B == "5" || B == "6" || B == "7" || B == "8" || B == "9")
							  {
								m_ctrlSpread2.SetCellType(2);
								m_ctrlSpread2.SetTypeFloatDecimalPlaces(2);
							  }
							  else
							  {
								m_ctrlSpread2.SetCellType(5);
							  }
							  m_ctrlSpread2.SetText(A.Left(ZFWZ));
							}
							else
							{
								m_ctrlSpread2.SetText("");
							}
							TX[i][j] = atoi(A.Right(A.GetLength()-ZFWZ-1));
						  }
					}
				  }
				  m_ctrlSpread2.SetGridShowHoriz(FALSE);
				  m_ctrlSpread2.SetGridShowVert(FALSE);
				  for(j = 1;j<=m_ctrlSpread2.GetMaxCols();j++)
				  {
					for(i = 1;i<=m_ctrlSpread2.GetMaxRows();i++)
					{
					  m_ctrlSpread2.SetCol(j);
					  m_ctrlSpread2.SetRow(i);
					  m_ctrlSpread2.SetCol2(j);
					  m_ctrlSpread2.SetRow2(i);
					  m_ctrlSpread2.SetBlockMode(TRUE);
					  m_ctrlSpread2.SetCellBorderType(TX[i][j]);
					  m_ctrlSpread2.SetAction(16);
					  m_ctrlSpread2.SetCellBorderStyle(1);
					  m_ctrlSpread2.SetBlockMode(FALSE);
					}
				  }
				  //m_ctrlSpread2.SetColHeaderDisplay(0);
/*				  m_ctrlSpread2.SetCol(0);
				  m_ctrlSpread2.SetRow(0);
				  m_ctrlSpread2.SetCol2(m_ctrlSpread2.GetMaxCols());
				  m_ctrlSpread2.SetRow2(m_ctrlSpread2.GetMaxRows());
				  m_ctrlSpread2.SetBlockMode(TRUE);
				  m_ctrlSpread2.SetFontName("宋体");
				  if(ColWidth * m_ctrlSpread2.GetMaxCols() > 80)
				    m_ctrlSpread2.SetFontSize(10);
				  else
				    m_ctrlSpread2.SetFontSize(12);
				  m_ctrlSpread2.SetFontBold(FALSE);
				  m_ctrlSpread2.SetRow(m_ctrlSpread2.GetMaxRows());
				  ColWidth=8;
				  for(j = 1;j<=m_ctrlSpread2.GetMaxCols();j++)
				  {
						m_ctrlSpread2.SetCol(j);
						if( m_ctrlSpread2.GetText() != "")
							  ColWidth = atoi(m_ctrlSpread2.GetText());
						m_ctrlSpread2.SetColWidth(j,ColWidth * m_ctrlSpread2.GetFontSize() / 12);
				  }
				  m_ctrlSpread2.SetBlockMode(FALSE);
				  m_ctrlSpread2.SetMaxRows(m_ctrlSpread2.GetMaxRows() - 1);
				  m_ctrlSpread2.SetMaxRows(m_ctrlSpread2.GetMaxRows() + 1);*/

					//---------------------------------------------------------
//				}
//				else
//				{// 到文件尾
//					break;
//				}
//			}
//			catch (CFileException exception1)
//			{
//				Beep(650, 50);
//				AfxMessageBox("读计算结果文件出错,请重新计算!", MB_ICONINFORMATION);
//				return;
//			}
//		}
//		file.Close();
   		
		//DeleteFile(strOpenFile);
     

	}
//	UpdateData(false);
}

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

⌨️ 快捷键说明

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