表格还可以调整打印效果,并在打印机中输出。
这些功能都是用通用对话框进行设置的。
首先介绍一下GridDemo 的基本框架。GridDemo 是一个单文档应用程序,类和主要成员
变量的关系如图4-26 所示。
? CMainFrcom:GridDemo 的框架类。
? CGridDemoDoccomnt:GridDemo 的文档类,用于存取文档并更新相应的视图。
? m_CellTextArray:CGridDemoDoccomnt 的成员变量,用于保存表格中的文本,是一个
一维的字符串数组,通过行数m_nRow 和列数m_nCol 映shè到二维的表格中。
? CGridDemoView:GridDemo 的视图类,用于显示和修改表格。表格的每个单元格在
CGridDemoView 中以输入框的控件形式出现。这个表格由一个输入框控件数组
m_CellArray 组成,并且由这个控件数组进行绘制。
? m_CellArray:CGridDemoView 的成员变量,用于显示和修改表格,是一个一维的
CMyEdit 类型数组,数组下标与文档类中的m_CellTextArray 一致。
? CMyEdit:重载的CEdit 类,用于更改输入框文字颜色和字体。
图4-26 GridDemo 的组织关系图
4.5.1 打印设置对话框
打印设置对话框如图4-27 所示,这个对话框提供了Windows 标准打印设置,包括选择
打印机、打印范围和打印份数等。这些选项一般在打印输出前进行设置。
枫叶文学网www.fywxw.com
Visual C++ 6.0 程序设计从入门到精通
·90·
图4-27 打印设置对话框
CPrintDialog 封装了打印设置对话框的cāo作。在GridDemo 的GridDemoView.cpp 文件中,
CGridDemoView::OnFilePrint()函数用于创建打印设置对话框,步骤如下:
(1)创建CGridDemoView::OnFilePrint()函数。
CGridDemoView::OnFilePrint()是GridDemo 例程视图类“文件|打印”菜单项的消息处理
函数。在用IDE 的AppWizard 创建SDI 应用程序的过程中,默认创建了“文件|打印”菜单
项,用户只需要依照第3 章的讲解,在CGridDemoView 类中为该菜单项ON_FILE_PRINT
添加消息处理函数,就可以创建CGridDemoView::OnFilePrint()函数。
(2)创建CPrintDialog 对象。CGridDemoView::OnFilePrint()函数创建CPrintDialog 对象
dlg,代码如下:
//打开一个打印设置对话框
CPrintDialog dlg(FALSE,PD_NOSELECTION|PD_NOPAGENUMS,this);
( 3 ) 打开CPrintDialog 对话框。这通过调用CPrintDialog::DoMo