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

📄 msflexgrid.cpp

📁 一个农用车辆管理系统的雏形
💻 CPP
📖 第 1 页 / 共 3 页
字号:
	return result;
}

void CMSFlexGrid::SetMergeRow(long index, BOOL bNewValue)
{
	static BYTE parms[] =
		VTS_I4 VTS_BOOL;
	InvokeHelper(0x3b, DISPATCH_PROPERTYPUT, VT_EMPTY, NULL, parms,
		 index, bNewValue);
}

BOOL CMSFlexGrid::GetMergeCol(long index)
{
	BOOL result;
	static BYTE parms[] =
		VTS_I4;
	InvokeHelper(0x3c, DISPATCH_PROPERTYGET, VT_BOOL, (void*)&result, parms,
		index);
	return result;
}

void CMSFlexGrid::SetMergeCol(long index, BOOL bNewValue)
{
	static BYTE parms[] =
		VTS_I4 VTS_BOOL;
	InvokeHelper(0x3c, DISPATCH_PROPERTYPUT, VT_EMPTY, NULL, parms,
		 index, bNewValue);
}

void CMSFlexGrid::SetRowPosition(long index, long nNewValue)
{
	static BYTE parms[] =
		VTS_I4 VTS_I4;
	InvokeHelper(0x3d, DISPATCH_PROPERTYPUT, VT_EMPTY, NULL, parms,
		 index, nNewValue);
}

void CMSFlexGrid::SetColPosition(long index, long nNewValue)
{
	static BYTE parms[] =
		VTS_I4 VTS_I4;
	InvokeHelper(0x3e, DISPATCH_PROPERTYPUT, VT_EMPTY, NULL, parms,
		 index, nNewValue);
}

long CMSFlexGrid::GetRowData(long index)
{
	long result;
	static BYTE parms[] =
		VTS_I4;
	InvokeHelper(0x3f, DISPATCH_PROPERTYGET, VT_I4, (void*)&result, parms,
		index);
	return result;
}

void CMSFlexGrid::SetRowData(long index, long nNewValue)
{
	static BYTE parms[] =
		VTS_I4 VTS_I4;
	InvokeHelper(0x3f, DISPATCH_PROPERTYPUT, VT_EMPTY, NULL, parms,
		 index, nNewValue);
}

long CMSFlexGrid::GetColData(long index)
{
	long result;
	static BYTE parms[] =
		VTS_I4;
	InvokeHelper(0x40, DISPATCH_PROPERTYGET, VT_I4, (void*)&result, parms,
		index);
	return result;
}

void CMSFlexGrid::SetColData(long index, long nNewValue)
{
	static BYTE parms[] =
		VTS_I4 VTS_I4;
	InvokeHelper(0x40, DISPATCH_PROPERTYPUT, VT_EMPTY, NULL, parms,
		 index, nNewValue);
}

CString CMSFlexGrid::GetTextMatrix(long Row, long Col)
{
	CString result;
	static BYTE parms[] =
		VTS_I4 VTS_I4;
	InvokeHelper(0x41, DISPATCH_PROPERTYGET, VT_BSTR, (void*)&result, parms,
		Row, Col);
	return result;
}

void CMSFlexGrid::SetTextMatrix(long Row, long Col, LPCTSTR lpszNewValue)
{
	static BYTE parms[] =
		VTS_I4 VTS_I4 VTS_BSTR;
	InvokeHelper(0x41, DISPATCH_PROPERTYPUT, VT_EMPTY, NULL, parms,
		 Row, Col, lpszNewValue);
}

void CMSFlexGrid::AddItem(LPCTSTR Item, const VARIANT& index)
{
	static BYTE parms[] =
		VTS_BSTR VTS_VARIANT;
	InvokeHelper(0x42, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
		 Item, &index);
}

void CMSFlexGrid::RemoveItem(long index)
{
	static BYTE parms[] =
		VTS_I4;
	InvokeHelper(0x43, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
		 index);
}

void CMSFlexGrid::Clear()
{
	InvokeHelper(0x44, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
}

void CMSFlexGrid::Refresh()
{
	InvokeHelper(DISPID_REFRESH, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
}

CRowCursor CMSFlexGrid::GetDataSource()
{
	LPDISPATCH pDispatch;
	InvokeHelper(0x4c, DISPATCH_PROPERTYGET, VT_DISPATCH, (void*)&pDispatch, NULL);
	return CRowCursor(pDispatch);
}

void CMSFlexGrid::SetDataSource(LPDISPATCH newValue)
{
	static BYTE parms[] =
		VTS_DISPATCH;
	InvokeHelper(0x4c, DISPATCH_PROPERTYPUT, VT_EMPTY, NULL, parms,
		 newValue);
}

BOOL CMSFlexGrid::GetRowIsVisible(long index)
{
	BOOL result;
	static BYTE parms[] =
		VTS_I4;
	InvokeHelper(0x55, DISPATCH_PROPERTYGET, VT_BOOL, (void*)&result, parms,
		index);
	return result;
}

BOOL CMSFlexGrid::GetColIsVisible(long index)
{
	BOOL result;
	static BYTE parms[] =
		VTS_I4;
	InvokeHelper(0x56, DISPATCH_PROPERTYGET, VT_BOOL, (void*)&result, parms,
		index);
	return result;
}

long CMSFlexGrid::GetRowPos(long index)
{
	long result;
	static BYTE parms[] =
		VTS_I4;
	InvokeHelper(0x57, DISPATCH_PROPERTYGET, VT_I4, (void*)&result, parms,
		index);
	return result;
}

long CMSFlexGrid::GetColPos(long index)
{
	long result;
	static BYTE parms[] =
		VTS_I4;
	InvokeHelper(0x58, DISPATCH_PROPERTYGET, VT_I4, (void*)&result, parms,
		index);
	return result;
}

short CMSFlexGrid::GetGridLineWidth()
{
	short result;
	InvokeHelper(0x59, DISPATCH_PROPERTYGET, VT_I2, (void*)&result, NULL);
	return result;
}

void CMSFlexGrid::SetGridLineWidth(short nNewValue)
{
	static BYTE parms[] =
		VTS_I2;
	InvokeHelper(0x59, DISPATCH_PROPERTYPUT, VT_EMPTY, NULL, parms,
		 nNewValue);
}

short CMSFlexGrid::GetFixedAlignment(long index)
{
	short result;
	static BYTE parms[] =
		VTS_I4;
	InvokeHelper(0x5a, DISPATCH_PROPERTYGET, VT_I2, (void*)&result, parms,
		index);
	return result;
}

void CMSFlexGrid::SetFixedAlignment(long index, short nNewValue)
{
	static BYTE parms[] =
		VTS_I4 VTS_I2;
	InvokeHelper(0x5a, DISPATCH_PROPERTYPUT, VT_EMPTY, NULL, parms,
		 index, nNewValue);
}

BOOL CMSFlexGrid::GetRightToLeft()
{
	BOOL result;
	InvokeHelper(0xfffffd9d, DISPATCH_PROPERTYGET, VT_BOOL, (void*)&result, NULL);
	return result;
}

void CMSFlexGrid::SetRightToLeft(BOOL bNewValue)
{
	static BYTE parms[] =
		VTS_BOOL;
	InvokeHelper(0xfffffd9d, DISPATCH_PROPERTYPUT, VT_EMPTY, NULL, parms,
		 bNewValue);
}

long CMSFlexGrid::GetOLEDropMode()
{
	long result;
	InvokeHelper(0x60f, DISPATCH_PROPERTYGET, VT_I4, (void*)&result, NULL);
	return result;
}

void CMSFlexGrid::SetOLEDropMode(long nNewValue)
{
	static BYTE parms[] =
		VTS_I4;
	InvokeHelper(0x60f, DISPATCH_PROPERTYPUT, VT_EMPTY, NULL, parms,
		 nNewValue);
}

void CMSFlexGrid::OLEDrag()
{
	InvokeHelper(0x610, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
}

void CMSFlexGrid::InitGrid(int type,int row,int col)
{
	switch(type)
	{
	case 1://文化状况子表的可编辑表格
		{
			CDC* pDC = GetDC();
			SetBorderStyle(1);
			SetCols(col);   
			SetRows(row);
			SetMergeCells(1);//自由。包含相同内容的相邻单元总是合并。
			SetFixedRows(1);
			SetFixedCols(1);
			SetWordWrap(true);//显示多行表头的先决条件
			SetRowHeightMin ( ( long )( ROW_HEIGHT_PIXEL * 1.4 * 1440.0 / pDC->GetDeviceCaps(LOGPIXELSY)) );//坐标单位要转换
			SetRowHeight(0,( long )( ROW_HEIGHT_PIXEL * 2 * 1440.0 / pDC->GetDeviceCaps(LOGPIXELSY)));
			SetColWidth(0,( long ) ( COL_WIDTH_INDEX_PIXEL * 3.45 * 1440.0 / pDC->GetDeviceCaps(LOGPIXELSX) ));
			for(int n=1;n<col;n++)
				SetColWidth(n,( long ) ( COL_WIDTH_INDEX_PIXEL * 4.75 * 1440.0 / pDC->GetDeviceCaps(LOGPIXELSX) ));
			//设置列的对齐方式为列内容中间居中
			for ( int i = 0 ; i < col ; i ++ )
				SetColAlignment ( i, 4 );
			//设置固定行的名称
			SetTextMatrix ( 0,0, "入学时间及\r\n学校名称");
			SetTextMatrix ( 0,1, "学前教育阶段\r\n小  班");
			SetTextMatrix ( 0,2, "学前教育阶段\r\n中  班");
			SetTextMatrix ( 0,3, "学前教育阶段\r\n大  班");
			SetTextMatrix ( 0,4, "义务教育阶段\r\n一年级");
			SetTextMatrix ( 0,5, "义务教育阶段\r\n二年级");
			SetTextMatrix ( 0,6, "义务教育阶段\r\n三年级");
			SetTextMatrix ( 0,7, "义务教育阶段\r\n四年级");
			SetTextMatrix ( 0,8, "义务教育阶段\r\n五年级");
			SetTextMatrix ( 0,9, "义务教育阶段\r\n六年级");
			SetTextMatrix ( 0,10, "义务教育阶段\r\n七年级");
			SetTextMatrix ( 0,11, "义务教育阶段\r\n八年级");
			SetTextMatrix ( 0,12, "义务教育阶段\r\n九年级");
			SetTextMatrix ( 0,13, "高中教育阶段\r\n一年级");
			SetTextMatrix ( 0,14, "高中教育阶段\r\n二年级");
			SetTextMatrix ( 0,15, "高中教育阶段\r\n三年级");
			SetTextMatrix ( 1,0, "入学时间");
			SetTextMatrix ( 2,0, "学校名称");
			//选中第二个单元格以初始化
			SetRow(2L);
			SetCol(1L);
		}
		break;
	case 2://文化户口簿样表
		{
			CDC* pDC = GetDC();
			SetBorderStyle(1);
			SetCols(col);   
			SetRows(row);
			SetMergeCells(1);//自由。包含相同内容的相邻单元总是合并。
			SetFixedRows(3);
			SetFixedCols(0);
			SetWordWrap(true);//显示多行表头的先决条件
			SetRowHeightMin ( ( long )( ROW_HEIGHT_PIXEL * 1 * 1440.0 / pDC->GetDeviceCaps(LOGPIXELSY)) );//坐标单位要转换
			SetRowHeight(0,( long )( ROW_HEIGHT_PIXEL * 1.25 * 1440.0 / pDC->GetDeviceCaps(LOGPIXELSY)));
			SetRowHeight(1,( long )( ROW_HEIGHT_PIXEL * 0.75 * 1440.0 / pDC->GetDeviceCaps(LOGPIXELSY)));
			SetRowHeight(2,( long )( ROW_HEIGHT_PIXEL * 1.45 * 1440.0 / pDC->GetDeviceCaps(LOGPIXELSY)));
			SetRowHeight(6,( long )( ROW_HEIGHT_PIXEL * 3.25 * 1440.0 / pDC->GetDeviceCaps(LOGPIXELSY)));
			SetRowHeight(row-1,( long )( ROW_HEIGHT_PIXEL * 1.45 * 1440.0 / pDC->GetDeviceCaps(LOGPIXELSY)));
			for(int n=0;n<col;n++)
				SetColWidth(n,( long ) ( COL_WIDTH_INDEX_PIXEL * 1.75 * 1440.0 / pDC->GetDeviceCaps(LOGPIXELSX) ));
			for(int n=12;n<27;n++)
				SetColWidth(n,( long ) ( COL_WIDTH_INDEX_PIXEL * 3.25 * 1440.0 / pDC->GetDeviceCaps(LOGPIXELSX) ));
			SetColWidth(0,( long ) ( COL_WIDTH_INDEX_PIXEL * 0.9 * 1440.0 / pDC->GetDeviceCaps(LOGPIXELSX) ));
			SetColWidth(1,( long ) ( COL_WIDTH_INDEX_PIXEL * 1 * 1440.0 / pDC->GetDeviceCaps(LOGPIXELSX) ));
			SetColWidth(2,( long ) ( COL_WIDTH_INDEX_PIXEL * 3.25 * 1440.0 / pDC->GetDeviceCaps(LOGPIXELSX) ));
			SetColWidth(3,( long ) ( COL_WIDTH_INDEX_PIXEL * 3.25 * 1440.0 / pDC->GetDeviceCaps(LOGPIXELSX) ));
			SetColWidth(4,( long ) ( COL_WIDTH_INDEX_PIXEL * 0.9 * 1440.0 / pDC->GetDeviceCaps(LOGPIXELSX) ));
			SetColWidth(5,( long ) ( COL_WIDTH_INDEX_PIXEL * 0.9 * 1440.0 / pDC->GetDeviceCaps(LOGPIXELSX) ));
			SetColWidth(6,( long ) ( COL_WIDTH_INDEX_PIXEL * 2.75 * 1440.0 / pDC->GetDeviceCaps(LOGPIXELSX) ));
			SetColWidth(7,( long ) ( COL_WIDTH_INDEX_PIXEL * 0.9 * 1440.0 / pDC->GetDeviceCaps(LOGPIXELSX) ));
			for(int i=8;i<11;i++)
				SetColWidth(i,( long ) ( COL_WIDTH_INDEX_PIXEL * 2.75 * 1440.0 / pDC->GetDeviceCaps(LOGPIXELSX) ));
			SetColWidth(11,( long ) ( COL_WIDTH_INDEX_PIXEL * 3 * 1440.0 / pDC->GetDeviceCaps(LOGPIXELSX) ));
			SetColWidth(27,( long ) ( COL_WIDTH_INDEX_PIXEL * 1.25 * 1440.0 / pDC->GetDeviceCaps(LOGPIXELSX) ));
			SetColWidth(28,( long ) ( COL_WIDTH_INDEX_PIXEL * 1.45 * 1440.0 / pDC->GetDeviceCaps(LOGPIXELSX) ));
			SetColWidth(29,( long ) ( COL_WIDTH_INDEX_PIXEL * 1.45 * 1440.0 / pDC->GetDeviceCaps(LOGPIXELSX) ));
			//设置列的对齐方式为列内容中间居中
			for ( int i = 0 ; i < col ; i ++ )
			{
				SetColAlignment ( i, 4 );
				SetTextMatrix(0,i,"贵州省开阳县文化户口登记薄");//设定0行每一个单元格的内容相同方便合并
			}
			for ( int i = 0 ; i < 11 ; i ++ )
				SetTextMatrix(1,i,"户籍代码:");
			for ( int i = 11 ; i < 20 ; i ++ )
				SetTextMatrix(1,i,"填表人:");
			for ( int i = 20 ; i < col ; i ++ )
				SetTextMatrix(1,i,"填报时间:");
			for ( int i = 0 ; i < 3 ; i ++ )
				SetTextMatrix(2,i,"户主姓名");
			for ( int i = 3 ; i < 6 ; i ++ )
				SetTextMatrix(2,i," ");
			SetTextMatrix(2,6,"性别");
			SetTextMatrix(2,8,"族别");
			SetTextMatrix(2,10,"出生年月日");
			SetTextMatrix(2,11,"出生年月日");
			for ( int i = 12 ; i < 15 ; i ++ )
				SetTextMatrix(2,i," ");
			for ( int i = 15 ; i < 18 ; i ++ )
				SetTextMatrix(2,i,"是否非农业\r\n人   口");
			for ( int i = 19 ; i < 22 ; i ++ )
				SetTextMatrix(2,i,"文化程度");
			SetTextMatrix(2,22," ");
			SetTextMatrix(2,23," ");
			SetTextMatrix(2,24,"编号");
			SetTextMatrix(2,25,"编号");
			for ( int i = 26 ; i < col ; i ++ )
				SetTextMatrix(2,i," ");
			for(int i=8;i<28;i++)
				SetTextMatrix(3,i,"受   教   育   情   况");
			SetTextMatrix(3,28,"残疾类别");
			SetTextMatrix(3,29,"残疾类别");
			for(int i=8;i<28;i++)
				if(i<11)
					SetTextMatrix(4,i,"校外情况");
				else
					SetTextMatrix(4,i,"校  内  情  况");
			for ( int i = 3 ; i < row-1 ; i ++ )
				SetTextMatrix(i,0,"家\r\n\r\n庭\r\n\r\n成\r\n\r\n员");
			for ( int i = 3 ; i < 7 ; i ++ )
				SetTextMatrix(i,1,"与\r\n户\r\n主\r\n关\r\n系");
			SetTextMatrix(3,2,"姓    名");
			SetTextMatrix(3,3,"姓    名");
			for(int i=4;i<7;i++)
			{
				SetTextMatrix(i,2,"现用名");
				SetTextMatrix(i,3,"曾用名");
				SetTextMatrix(i,28,"三\r\n类\r\n残\r\n疾\r\n类\r\n别");
				SetTextMatrix(i,29,"其\r\n它\r\n残\r\n疾\r\n类\r\n别");
			}
			for(int i=3;i<7;i++)
			{
				SetTextMatrix(i,4,"性\r\n\r\n别");
				SetTextMatrix(i,5,"族\r\n\r\n别");
				SetTextMatrix(i,6,"出生\r\n年月\r\n日");
				SetTextMatrix(i,7,"是\r\n否\r\n非\r\n农\r\n业\r\n人\r\n口");
			}
			for(int i=8;i<11;i++)
				SetTextMatrix(4,i,"校外情况");
			for(int i=5;i<7;i++)
			{
				SetTextMatrix(i,8,"文化\r\n程度");
				SetTextMatrix(i,9,"离校\r\n时就\r\n读年\r\n级");
				SetTextMatrix(i,10,"离校、\r\n毕(结)\r\n业、脱\r\n盲时间");
				SetTextMatrix(i,11,"入学\r\n时间\r\n及\r\n学校\r\n名称");
				SetTextMatrix(i,27,"高\r\n等\r\n教\r\n育\r\n阶\r\n段");
			}
			for ( int i = 12 ; i < 15 ; i ++ )
				SetTextMatrix(5,i,"学前教育阶段");
			for ( int i = 15 ; i < 24 ; i ++ )
				SetTextMatrix(5,i,"义务教育阶段");
			for ( int i = 24 ; i < 27 ; i ++ )
				SetTextMatrix(5,i,"高中教育阶段");
			SetTextMatrix(6,12,"小\r\n班");
			SetTextMatrix(6,13,"中\r\n班");
			SetTextMatrix(6,14,"大\r\n班");
			SetTextMatrix(6,15,"一\r\n年\r\n级");
			SetTextMatrix(6,16,"二\r\n年\r\n级");
			SetTextMatrix(6,17,"三\r\n年\r\n级");
			SetTextMatrix(6,18,"四\r\n年\r\n级");
			SetTextMatrix(6,19,"五\r\n年\r\n级");
			SetTextMatrix(6,20,"六\r\n年\r\n级");
			SetTextMatrix(6,21,"七\r\n年\r\n级");
			SetTextMatrix(6,22,"八\r\n年\r\n级");
			SetTextMatrix(6,23,"九\r\n年\r\n级");
			SetTextMatrix(6,24,"一\r\n年\r\n级");
			SetTextMatrix(6,25,"二\r\n年\r\n级");
			SetTextMatrix(6,26,"三\r\n年\r\n级");
			CString str;
			for ( int i = 1 ; i < col ; i ++ )
			{
				str.Format("%d",i);
				SetTextMatrix(7,i,str);
			}
			SetTextMatrix(row-1,0,"备注");
			SetTextMatrix(row-1,1,"备注");
			for ( int i = 2 ; i < col ; i ++ )
			{
				SetTextMatrix(row-1,i," ");
			}
			for ( int i = 8 ; i < row-1 ; i ++ )
				if(i % 2==0)
					SetTextMatrix(i,11,"入学时间");
				else
					SetTextMatrix(i,11,"学校名称");
			for (int j=1,i=1,r = 8; r < row-1; r+=2 )
			{
				for(int c=1;c<col;c++)
				{
					if(c<11 || c>26)//设置(第11列前及第26列后)单元格初始内容均为一个空格(不含固定行列),必须先设置后才能实现合并
					{
						if(i % 2!=0)
							SetTextMatrix(r,c,"  ");
						else
							SetTextMatrix(r,c,"   ");
						i++;
						SetTextMatrix(r+1,c,GetTextMatrix(r,c));
					}
				}
				
			}
			//合并相邻相同内容的单元格
			for(int r=0;r<row;r++)
			{
				SetMergeRow(r,TRUE);
				for(int c=0;c<col;c++)
					SetMergeCol(c,TRUE);
			}
		}
		break;
	case 3://填写关键数据中的村名及编号用到的可编辑表格
		{
			CDC* pDC = GetDC();
			SetBorderStyle(1); 
			int row=2,col=3;
			SetCols(col);   
			SetRows(row);
			SetFixedRows(1);
			SetFixedCols(1);
			SetRowHeightMin ( ( long )( ROW_HEIGHT_PIXEL * 1.2 * 1440.0 / pDC->GetDeviceCaps(LOGPIXELSY)) );//坐标单位要转换
			SetColWidth(0,( long ) ( COL_WIDTH_INDEX_PIXEL * 1.4 * 1440.0 / pDC->GetDeviceCaps(LOGPIXELSX) ));
			SetColWidth(1,( long ) ( COL_WIDTH_INDEX_PIXEL * 9.55 * 1440.0 / pDC->GetDeviceCaps(LOGPIXELSX) ));
			SetColWidth(2,( long ) ( COL_WIDTH_INDEX_PIXEL * 7.55 * 1440.0 / pDC->GetDeviceCaps(LOGPIXELSX) ));
			//设置列的对齐方式为列内容中间居中
			for ( int i = 0 ; i < col ; i ++ )
				SetColAlignment ( i, 4 );
			//设置固定行的名称
			SetTextMatrix ( 0,0, "No.");
			SetTextMatrix ( 0,1, "村    名");
			SetTextMatrix ( 0,2, "户籍编号前缀");
			for (int r = 1; r < row; r++ )
			{
				CString strNum;
				strNum.Format ("%d", r);
				//设置固定列的名称
				SetTextMatrix (r,0,  strNum );
				for(int c=col-1;c>=1;c--)//选中每一个单元格以初始化
				{
					SetRow(long(r));
					SetCol(long(c));
				}
			}
			//选中第一个单元格以初始化
			SetRow(0L);
			SetCol(0L);
		}
		break;
	case 4://审核报告表
		{
			CDC* pDC = GetDC();
			SetBorderStyle(1); 
			SetCols(col);   
			SetRows(row);
			SetFixedRows(1);
			SetFixedCols(1);
			SetAllowUserResizing(2);
			SetRowHeightMin ( ( long )( ROW_HEIGHT_PIXEL * 0.75 * 1440.0 / pDC->GetDeviceCaps(LOGPIXELSY)) );//坐标单位要转换
			SetColWidth(0,( long ) ( COL_WIDTH_INDEX_PIXEL * 1.4 * 1440.0 / pDC->GetDeviceCaps(LOGPIXELSX) ));
			SetColWidth(1,( long ) ( COL_WIDTH_INDEX_PIXEL * 6.75 * 1440.0 / pDC->GetDeviceCaps(LOGPIXELSX) ));
			SetColWidth(2,( long ) ( COL_WIDTH_INDEX_PIXEL * 9.75 * 1440.0 / pDC->GetDeviceCaps(LOGPIXELSX) ));
			//设置列的对齐方式为列内容中间居中
			for ( int i = 0 ; i < col ; i ++ )
				SetColAlignment ( i, 1 );
			//设置固定行的名称
			SetTextMatrix ( 0,0, "No.");
			SetTextMatrix ( 0,1, "错误源");
			SetTextMatrix ( 0,2, "错误信息");
			for (int r = 1; r < row; r++ )
			{
				CString strNum;
				strNum.Format ("%d", r);
				//设置固定列的名称
				SetTextMatrix (r,0,  strNum );
			}
			//选中第一个单元格以初始化
		}
		break;
	}
}

⌨️ 快捷键说明

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