如果您无法下载资料,请参考说明:
1、部分资料下载需要金币,请确保您的账户上有足够的金币
2、已购买过的文档,再次下载不重复扣费
3、资料包下载后请先用软件解压,在使用对应软件打开
第6章框架窗口、文档和视图6.1.1主窗口和文档窗口6.1.2窗口风格的设置1.窗口风格6.1.2窗口风格的设置6.1.2窗口风格的设置6.1.2窗口风格的设置添加的滚动条6.1.3窗口状态的改变1.用ShowWindow改变窗口的显示状态6.1.3窗口状态的改变6.1.3窗口状态的改变2.用SetWindowPos或MoveWindow改变窗口的大小和位置2.用SetWindowPos或MoveWindow改变窗口的大小和位置6.2文档模板6.2.1文档模板类6.2.2文档模板字串资源6.2.2文档模板字串资源6.2.3使用多个文档类型[例Ex_MDIDemo][例Ex_MDIDemo][例Ex_MDIDemo][例Ex_MDIDemo][例Ex_MDIDemo]6.3文档序列化6.3.1文档序列化过程6.3.1文档序列化过程6.3.1文档序列化过程6.3.1文档序列化过程6.3.2文档序列化操作6.3.2文档序列化操作6.3.2文档序列化操作6.3.2文档序列化操作fmt=LVCFMT_LEFT;CObArrayarray;//使用默认的内存块大小voidCEx_SDIArchiveDoc::Serialize(CArchive&ar)是使窗口居于父窗口中央,就像下面的代码:voidSetSize(intnNewSize,intnGrowBy=-1);用来从一个文件对象中读写一行文本,它们的原型如下:消息映射函数,并增加下列代码:当MFCAppWizard产生应用程序CView类时,它同时也创建一个安全类型的但文档、视图以及和应用程序框架的相关菜单中选择New,出现“NewClass”对话框,在Name框中输入类名COtherDoc,它可以是CArchive::load(读取数据)、CArchive::store(存入数据)或CArchive::其中,nCode用来指定排列方式,它可以是下列值之一:该函数成功时返回新列表项[例Ex_SDIArchive]for(inti=1;i<sizeof(m_chArchive);i++)ar>>m_chArchive[i];ar.ReadString(m_strArchive);CStringstr;str.Format("%s%s",m_chArchive,m_strArchive);AfxMessageBox(str);m_bIsMyDoc=TRUE;}else//不是自己的文档{m_bIsMyDoc=FALSE;AfxMessageBox("打开的文档无效!");}}}[例Ex_SDIArchive]6.3.3使用简单数组集合类6.3.3使用简单数组集合类6.3.3使用简单数组集合类6.3.3使用简单数组集合类6.3.4文档序列化示例6.3.4文档序列化示例[例Ex_Student][例Ex_Student]public:CStudent(){};CStudent(CStringname,CStringid,floatf1,floatf2,floatf3);voidSerialize(CArchive&ar);voidDisplay(inty,CDC*pDC);//在坐标为(0,y)处显示数据};CStudent::CStudent(CStringname,CStringid,floatf1,floatf2,floatf3){strName=name;strID=id;fScore1=f1;fScore2=f2;fScore3=f3;fAverage=(float)((f1+f2+f3)/3.0);}voidCStudent::Display(inty,CDC*pDC){CStringstr;str.Format("%s%s%f%f%f%f",strName,strID,fScore1,fScore2,fScore3,fAverage);pDC->TextOut(0,y,str);}IMPLEMENT_SERIAL(CStudent,CObject,1)voidCStudent::Serialize(CArchive&ar){if(ar.IsStoring())ar<<strName<<strID<<fScore1<<fScore2<<fScore3<<fAverage;elsear>>strName>>strID>>fScore1>>fScore2>>fScore3>>fAverage;}[例Ex_Student][例Ex_Student][例Ex_