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

📄 chap5_6.htm

📁 VC++编程实例。非常详细
💻 HTM
📖 第 1 页 / 共 5 页
字号:
    <p ALIGN="JUSTIFY"><b><span style="font-size: 9pt"> </span></p>
    <p ALIGN="CENTER"><span style="font-size: 9pt">表5.8 CFindReplaceDialog类的辅助成员函数</span></b></p>
    <table BORDER="1" CELLSPACING="1" CELLPADDING="1" WIDTH="579">
      <tr>
        <td WIDTH="25%"><b><p ALIGN="JUSTIFY"><span style="font-size: 9pt">函数名</span></b></td>
        <td WIDTH="75%"><b><p ALIGN="JUSTIFY"><span style="font-size: 9pt">用途</span></b></td>
      </tr>
      <tr>
        <td WIDTH="25%"><p ALIGN="JUSTIFY"><span style="font-size: 9pt">FindNext</span></td>
        <td WIDTH="75%"><p ALIGN="JUSTIFY"><span style="font-size: 9pt">如果用户点击了Findnext按钮,该函数返回TRUE。</span></td>
      </tr>
      <tr>
        <td WIDTH="25%"><p ALIGN="JUSTIFY"><span style="font-size: 9pt">GetNotifier</span></td>
        <td WIDTH="75%"><p ALIGN="JUSTIFY"><span style="font-size: 9pt">返回一个指向当前CFindReplaceDialog对话框的指针。</span></td>
      </tr>
      <tr>
        <td WIDTH="25%"><p ALIGN="JUSTIFY"><span style="font-size: 9pt">GetFindString</span></td>
        <td WIDTH="75%"><p ALIGN="JUSTIFY"><span style="font-size: 9pt">返回一个包含要搜索字符串的CString对象。</span></td>
      </tr>
      <tr>
        <td WIDTH="25%"><p ALIGN="JUSTIFY"><span style="font-size: 9pt">GetReplaceString</span></td>
        <td WIDTH="75%"><p ALIGN="JUSTIFY"><span style="font-size: 9pt">返回一个包含替换字符串的CString对象。</span></td>
      </tr>
      <tr>
        <td WIDTH="25%"><p ALIGN="JUSTIFY"><span style="font-size: 9pt">IsTerminating</span></td>
        <td WIDTH="75%"><p ALIGN="JUSTIFY"><span style="font-size: 9pt">如果对话框终止了,则返回TRUE。</span></td>
      </tr>
      <tr>
        <td WIDTH="25%"><p ALIGN="JUSTIFY"><span style="font-size: 9pt">MatchCase</span></td>
        <td WIDTH="75%"><p ALIGN="JUSTIFY"><span style="font-size: 9pt">如果选择了对话框中的Match 
        case检查框,则返回TRUE。</span></td>
      </tr>
      <tr>
        <td WIDTH="25%"><p ALIGN="JUSTIFY"><span style="font-size: 9pt">MatchWholeWord</span></td>
        <td WIDTH="75%"><p ALIGN="JUSTIFY"><span style="font-size: 9pt">如果选择了对话框中的Match 
        Whole Word检查框,则返回TRUE。</span></td>
      </tr>
      <tr>
        <td WIDTH="25%"><p ALIGN="JUSTIFY"><span style="font-size: 9pt">ReplaceAll</span></td>
        <td WIDTH="75%"><p ALIGN="JUSTIFY"><span style="font-size: 9pt">如果用户点击了Replace 
        All按钮,该函数返回TRUE。</span></td>
      </tr>
      <tr>
        <td WIDTH="25%"><p ALIGN="JUSTIFY"><span style="font-size: 9pt">ReplaceCurrent</span></td>
        <td WIDTH="75%"><p ALIGN="JUSTIFY"><span style="font-size: 9pt">如果用户点击了Replace按钮,该函数返回TRUE。</span></td>
      </tr>
      <tr>
        <td WIDTH="25%"><p ALIGN="JUSTIFY"><span style="font-size: 9pt">SearchDown</span></td>
        <td WIDTH="75%"><p ALIGN="JUSTIFY"><span style="font-size: 9pt">返回TRUE表明搜索方向向下,返回FALSE则向上。</span></td>
      </tr>
    </table>
    <p><span style="font-size: 9pt"> </span></p>
    <p ALIGN="JUSTIFY"><span style="font-size: 9pt"> </span></p>
    <p ALIGN="JUSTIFY"><span style="font-size: 9pt">CEditView类自动实现了Find和Replace对话框的功能,但MFC 
    AppWizard并未提供相应的菜单命令。读者可以在前面的Register工程的Edit菜单中加入&amp;Find...和&amp;Replace...两项,并令其ID分别为ID_EDIT_FIND和ID_EDIT_REPLACE,则Find/Replace对话框的功能就可以实现。</span></p>
    <b><p ALIGN="JUSTIFY"></b><span style="font-size: 9pt"><font color="#3973DE">5.6.4 
    CFontDialog类</font></span></p>
    <p ALIGN="JUSTIFY"><span style="font-size: 9pt">CFontDialog类支持Font(字体)对话框,用来让用户选择字体。图5.16显示了一个Font对话框。Font对话框的创建过程与Color对话框的类似,首先是在堆栈上构建一个CFontDialog对象,然后调用CFontDialog::DoModal来启动对话框。</span></p>
    <p ALIGN="center"><span style="font-size: 9pt"><img src="T5_16.gif"
    alt="T5_16.tif (144136 bytes)" WIDTH="411" HEIGHT="324"></span></p>
    <p ALIGN="center"><span style="font-size: 9pt">图5.16 Font对话框</span><b></p>
    <p ALIGN="JUSTIFY"></b><span style="font-size: 9pt"> </span></p>
    <p ALIGN="JUSTIFY"><span style="font-size: 9pt">CFontDialog类的构造函数如下所示</span></p>
    <blockquote>
      <blockquote>
        <blockquote>
          <blockquote>
            <p ALIGN="JUSTIFY"><span style="font-size: 9pt">CFontDialog( LPLOGFONT lplfInitial = NULL, 
            DWORD dwFlags = CF_EFFECTS | CF_SCREENFONTS, CDC* pdcPrinter = NULL, CWnd* pParentWnd = 
            NULL );</span></p>
          </blockquote>
        </blockquote>
      </blockquote>
    </blockquote>
    <p ALIGN="JUSTIFY"><span style="font-size: 9pt">参数lplfInitial指向一个LOGFONG结构,用来初始化对话框中的字体设置。dwFlags用于设置对话框。pdcPrinter指向一个代表打印机的CDC对象,若设置该参数,则选择的字体就为打印机所用。pParentWnd用于指定对话框的父窗口或拥有者窗口。</span></p>
    <p ALIGN="JUSTIFY"><span style="font-size: 9pt">若DoModal返回IDOK,那么可以调用CFontDialog的成员函数来获得所选字体的信息,这些函数在表5.9列出。</span></p>
    <p ALIGN="JUSTIFY"><b><span style="font-size: 9pt"> </span></p>
    <p ALIGN="CENTER"><span style="font-size: 9pt">表5.9 CFontDialog类的辅助成员函数</span></b></p>
    <table BORDER="1" CELLSPACING="1" CELLPADDING="1" WIDTH="579">
      <tr>
        <td WIDTH="20%"><b><p ALIGN="JUSTIFY"><span style="font-size: 9pt">函数名</span></b></td>
        <td WIDTH="80%"><b><p ALIGN="JUSTIFY"><span style="font-size: 9pt">用途</span></b></td>
      </tr>
      <tr>
        <td WIDTH="20%"><p ALIGN="JUSTIFY"><span style="font-size: 9pt">GetCurrentFont</span></td>
        <td WIDTH="80%"><p ALIGN="JUSTIFY"><span style="font-size: 9pt">用来获得所选字体的属性。该函数有一个参数,该参数是指向LOGFONT结构的指针,函数将所选字体的各种属性写入这个LOGFONT结构中。</span></td>
      </tr>
      <tr>
        <td WIDTH="20%"><p ALIGN="JUSTIFY"><span style="font-size: 9pt">GetFaceName</span></td>
        <td WIDTH="80%"><p ALIGN="JUSTIFY"><span style="font-size: 9pt">返回一个包含所选字体名字的CString对象。</span></td>
      </tr>
      <tr>
        <td WIDTH="20%"><p ALIGN="JUSTIFY"><span style="font-size: 9pt">GetStyleName</span></td>
        <td WIDTH="80%"><p ALIGN="JUSTIFY"><span style="font-size: 9pt">返回一个包含所选字体风格名字的CString对象。</span></td>
      </tr>
      <tr>
        <td WIDTH="20%"><p ALIGN="JUSTIFY"><span style="font-size: 9pt">GetSize</span></td>
        <td WIDTH="80%"><p ALIGN="JUSTIFY"><span style="font-size: 9pt">返回所选字体的尺寸(以10个象素为单位)。</span></td>
      </tr>
      <tr>
        <td WIDTH="20%"><p ALIGN="JUSTIFY"><span style="font-size: 9pt">GetColor</span></td>
        <td WIDTH="80%"><p ALIGN="JUSTIFY"><span style="font-size: 9pt">返回一个含有所选字体的颜色的COLORREF型值。</span></td>
      </tr>
      <tr>
        <td WIDTH="20%"><p ALIGN="JUSTIFY"><span style="font-size: 9pt">GetWeight</span></td>
        <td WIDTH="80%"><p ALIGN="JUSTIFY"><span style="font-size: 9pt">返回所选字体的权值。</span></td>
      </tr>
      <tr>
        <td WIDTH="20%"><p ALIGN="JUSTIFY"><span style="font-size: 9pt">IsStrikeOut</span></td>
        <td WIDTH="80%"><p ALIGN="JUSTIFY"><span style="font-size: 9pt">若用户选择了空心效果则返回TRUE,否则返回FALSE。</span></td>
      </tr>
      <tr>
        <td WIDTH="20%"><p ALIGN="JUSTIFY"><span style="font-size: 9pt">IsUnderline</span></td>
        <td WIDTH="80%"><p ALIGN="JUSTIFY"><span style="font-size: 9pt">若用户选择了下划线效果则返回TRUE,否则返回FALSE。</span></td>
      </tr>
      <tr>
        <td WIDTH="20%"><p ALIGN="JUSTIFY"><span style="font-size: 9pt">IsBold</span></td>
        <td WIDTH="80%"><p ALIGN="JUSTIFY"><span style="font-size: 9pt">若用户选择了黑体风格则返回TRUE,否则返回FALSE。</span></td>
      </tr>
      <tr>
        <td WIDTH="20%"><p ALIGN="JUSTIFY"><span style="font-size: 9pt">IsItalic</span></td>
        <td WIDTH="80%"><p ALIGN="JUSTIFY"><span style="font-size: 9pt">若用户选择了斜体风格则返回TRUE,否则返回FALSE。</span></td>
      </tr>
    </table>
    <p><span style="font-size: 9pt"> </span></p>
    <b><p ALIGN="JUSTIFY"></b><span style="font-size: 9pt"><font color="#3973DE">.6.5 
    CPrintDialog类</font></span></p>
    <p ALIGN="JUSTIFY"><span style="font-size: 9pt">CPrintDialog类支持Print(打印)和Print 
    Setup(打印设置)对话框,通过这两个对话框用户可以进行与打印有关的操作。图5.17显示了一个Print对话框,图5.18显示了一个Print 
    Setup对话框。</span></p>
    <p ALIGN="center"><span style="font-size: 9pt"><img src="T5_17.gif"
    alt="T5_17.tif (147955 bytes)" WIDTH="437" HEIGHT="315"></span></p>
    <p ALIGN="center"><span style="font-size: 9pt">图5.17 Print对话框</span></p>
    <p ALIGN="center"><span style="font-size: 9pt"><img src="T5_18.gif"
    alt="T5_18.tif (136979 bytes)" WIDTH="437" HEIGHT="291"></span></p>
    <p ALIGN="center"><span style="font-size: 9pt">图5.18 Print Setup对话框</span></p>
    <p ALIGN="JUSTIFY"><span style="font-size: 9pt"> </span></p>
    <p ALIGN="JUSTIFY"><span style="font-size: 9pt">Print和Print Setup对话框的创建过程与Color对话框类似。该类的构造函数是</span></p>
    <blockquote>
      <blockquote>
        <blockquote>
          <blockquote>
            <p ALIGN="JUSTIFY"><span style="font-size: 9pt">CPrintDialog( BOOL bPrintSetupOnly, DWORD 
            dwFlags = PD_ALLPAGES | PD_USEDEVMODECOPIES | PD_NOPAGENUMS | PD_HIDEPRINTTOFILE | 
            PD_NOSELECTION, CWnd* pParentWnd = NULL );</span></p>
          </blockquote>
        </blockquote>
      </blockquote>
    </blockquote>
    <p ALIGN="JUSTIFY"><span style="font-size: 9pt">参数bPrintSetupOnly的值若为TRUE,则创建的是Print对话框,否则,创建的是Print 
    Setup对话框。dwFlags用来设置对话框,缺省设置是打印出全部页,禁止From和To编辑框(即不用确定要打印的页的范围),PD_USEDEVMODECOPIES使对话框判断打印设备是否支持多份拷贝和校对打印(Collate),若不支持,就禁止相应的编辑控件和Collate检查框。pParentWnd用来指定对话框的父窗口或拥有者窗口。</span></p>
    <p ALIGN="JUSTIFY"><span style="font-size: 9pt">程序可以调用如表5.10所示的CPrintDialog的成员函数来获得打印参数。</span></p>
    <p ALIGN="JUSTIFY"><b><span style="font-size: 9pt"> </span></p>
    <p ALIGN="CENTER"><span style="font-size: 9pt">表5.10 CPrintDialog的辅助成员函数</span></b></p>
    <table BORDER="1" CELLSPACING="1" CELLPADDING="1" WIDTH="579">
      <tr>
        <td WIDTH="24%"><b><p ALIGN="JUSTIFY"><span style="font-size: 9pt">函数名</span></b></td>
        <td WIDTH="76%"><b><p ALIGN="JUSTIFY"><span style="font-size: 9pt">用途</span></b></td>
      </tr>
      <tr>
        <td WIDTH="24%"><p ALIGN="JUSTIFY"><span style="font-size: 9pt">GetCopies</span></td>
        <td WIDTH="76%"><p ALIGN="JUSTIFY"><span style="font-size: 9pt">返回要求的拷贝数。</span></td>
      </tr>

⌨️ 快捷键说明

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