友情提示:如果本网页打开太慢或显示不完整,请尝试鼠标右键“刷新”本网页!阅读过程发现任何错误请告诉我们,谢谢!! 报告错误
喜书网 返回本书目录 我的书架 我的书签 TXT全本下载 进入书吧 加入书签

C语言实例教程(PDF格式)-第51章

按键盘上方向键 ← 或 → 可快速上下翻页,按键盘上的 Enter 键可回到本书目录页,按键盘上方向键 ↑ 可回到本页顶部!
————未阅读完?加入书签已便下次继续阅读!




                             Windows   CloseClipboard函数被 

                             调用时才可以更改剪贴板  



          GetClipboardOwner  获得剪贴板的当前拥有者的指针  



          GetOpenClipboardWindow  获得指向当前打开剪贴板的窗口 

                             的指针  



          GetClipboardViewer  获得指向剪贴板查看器链中第一 

                             个窗口的指针  



21。 OLE控件函数 (表6。22)  



                    表6。 22 类CWnd的OLE控件函数  



                成员函数           描述  


…………………………………………………………Page 312……………………………………………………………

               SetProperty   设置OLE控件属性  



               OnAmbientProperty  实现环境属性值  



               GetControlUnknown  获得指向一未知OLE 

                             控件的指针  



               GetProperty   获得一OLE控件的属 

                             性  



               InvokeHelper  调用OLE控件方法或 

                             属性  



22。 可重载函数 (表6。23)  



    



                  表6。 23 类CWnd的可重载成员函数  



          成员函数       描述  



          WindowProc  为CWnd对象提供一个窗口过程。默认的窗 

                      口过程通过消息映射发送消息  



          DefWindowProc   调用默认窗口过程,该过程提供应用程序 

                     未处理的所有窗口消息的默认处理  



          PostNcDestroy   在窗口被消毁后由OnNcDestroy函数调用  



          OnNotify   由框架调用以通知父窗口某一事件在某一 

                     控件中发生或者该控件需要信息  



          OnChildNotify   由父窗口调用以给通知控件一个响应控件 

                     通知的机会  



          DoDataExchange  用于对话框数据交换和验证。由 

                     UpdateData调用  



其余函数包括对各种窗口消息的消息处理函数,这些函数为数众多, 

这里我们限于篇幅不再一一介绍。类CWnd中定义的消息处理函数几乎 

都具有一致的命名方式,其格式为前缀On再加上相应的消息名,如 

WM_PAINT消息的处理函数在类CWnd中被命名为OnPaint。因此,只需 

知道所需处理的消息,就可以很快的推知该消息的处理函数名。  



                       第三节 按钮  



在本节中要讲述的实际包括四种控件:下压按钮、单选钮、复选框和 


…………………………………………………………Page 313……………………………………………………………

组框,它们之间无论在外观还是在使用上都有较大的差异。在MFC中 

之所以使用一个类CButton来封装这四种不同控件纯粹出于历史的原 

因。这使得一些使用过Visual  Basic之类的编程工具的程序员可能会 

有一点混淆,但相信只需要很短的时间就可以习惯这一点转变。  



下面我们分别讲述这四种按钮控件:  



6。3。1 下压按钮  



在基于对话框的应用程序中,下压按钮是最常见的控件之一,如图 

6。10所示。  



                               



                   图6。 10 下压按钮  



下面的步骤讲述如何向对话框中添加下压按钮控件。  



1。   在ResourceView中双击需要添加下压按按钮控件的对话框模板, 

Developer  Studio将在资源编辑器中打开该对话框模板。如图6。11所 

示。  



2。  在图6。3所示的控件工具窗口中选择图标        ,直接使用鼠标在对话 

框中绘制出一个下压按钮。  



3。   右击所绘制的下压按钮,选择Properties命令打开其属性对话 

框,设置下压按钮的各项属性。下面详细描述这些属性的含义:  


…………………………………………………………Page 314……………………………………………………………

                                          



          图6。 11 在资源编辑器中打开一对话框模板  



                             



           图6。 12 在对话框中绘制下压按钮控件  



一般属性:  



      ID:      在头文件中定义的符号。类型:符号、整 

               数或用引号括起来的字符串  



      Caption:  控件标签文本。如果在标题中的某个字母 

               前加上了 “&”符号,该字母在显示时将被 

               加上下划线,相应的 “&”符不会被显示。 

               在运行直接按下加有下划线的字母同单击 

               按钮具有同样的效果。默认情况下,资源 

               编辑器对按钮标题的命名依赖于控件的类 

               型,如Button1、Button2等。  



      Visible:  决定当应用程序第一次运行时控件是否可 

               见。类型:布尔值 默认值为真  



      Disabled:  决定当对话框创建时该控件是否显示为禁 

               止状态。类型:布尔值 默认值为假  


…………………………………………………………Page 315……………………………………………………………

     Group:  指定一组控件中的第一个控件。在同组控 

             件中用户可以使用箭头键在控件之间移 

             动。以tab  order为序,在该控件之后的所 

             有该属性值为False的控件将被视为同一组 

             控件,直到遇上Group属性标记为True的控 

             件为止。类型:布尔值 默认值为假  



     Tabstop:  决定用户是否可以使用TAB键来定位到该控 

             件。类型:布尔值 默认值为假  



     HelpID:  为控件指定一个帮助标识符。该标识符基 

             于相应的资源标识符。类型:布尔值  默认 

             值为假  



样式:  



     Default  该属性为真时,控件将作为对话框中的 

     button:  默认按钮,默认按钮在对话框第一次显 

              示时具有粗的黑边,用户在对话框中按 

              下ENTER键相当于单击该按钮。一个对话 

              框中只允许有一个默认按钮。类型:布 

              尔值 默认值为假  



     Owner draw:  创建一个自绘按钮。使用自绘按钮可以 

              定制按钮的外观。使用自绘按钮需要重 

              载下面的两个函数或其中之一: 

              CWnd::OnDrawItem和CButton::OnDraw。  



     Icon:    在按钮显示时使用一个图标来代替文 

              本。类型:布尔值 默认值为假   



              该按钮样式为Windows   95中新引入的按 

              钮样式  



     Bitmap:  在按钮显示时使用位图来代替文本。类 

              型:布尔值 默认值为假  



              该样式为Windows 95中新引入的样式  



     Multi…line:  当按钮文本太长时使用多行回绕的方式 

              进行显示。类型:布尔值 默认值为假  


…………………………………………………………Page 316……………………………………………………………

     Notify:   按钮控件被单击或双击时通知父窗口。 

               类型:布尔值 默认值为真  



     Flat:     使用平面外观代替按钮默认的三维外 

               观。类型:布尔值 默认值为假  



     Horizontal  设置按钮标题文本的对齐方式 (左对齐、 

     alignment:   右对齐、居中对齐或使用默认位置)  



     Vertical  设置按钮标题文本的对齐方式 (向上对 

     alignment:   齐、向下对齐、居中对齐或使用默认位 

               置)  



扩展样式  



     Client edge:  使按钮看起来有下凹的感觉。类型: 

                 布尔值 默认值为假  



     Static edge:  在按钮边缘创建边框。类型:布尔值  

                 默认值为假  



     Modal frame:  提供一个三维框架  



     Transparent:  使控件透明。位于透明窗口下面的窗 

                 口不会被该窗口所覆盖。具有透明样 

                 式的窗口仅当所有底层兄弟窗口完成 

                 更新之后才会收到WM_PAINT消息。类 

                 型:布尔值 默认什为假  



     Accept files:  是否接受文件拖放。如果在控件上放 

                 下文件时,控件将接收到 

                 WM_DROPFILES消息。类型:布尔值  

                 默认值为假  



     No    parent  指定子窗口不向父窗口发送 

     notify:     WM_PARENTNOTIFY消息。类型:布尔 

                 值 默认值为假  



     Right   aligned  指定文本为右对齐。类型:布尔值  

     text:       默认值为假  



     Right…to…left  使用从右向左的阅读方式来显示文 

     reading     本。主要用于希伯来语系和阿拉伯语 


…………………………………………………………Page 317……………………………………………………………

        order:       等。类型:布尔值 默认值为假  



  l 技巧:  



  l 如果需要在控件的标题文本中使用 “&”符,可以使用双写的 

   “&”符,如按钮文本 “&File && Directory”在显示时将成为 

         。  



  l 如果需要在控件标题中使用多行文本,可以将按钮控件的 

   Multiline属性设置为真,然后在需要换行的地方使用转义字符  

   〃n〃 或 〃r〃。在Multiline属性值为真的情况下,如果文本行的 

   宽度超过了控件的宽度,即使没有使用换行转义字符,文本也将 

   会在合适的地方进行折行处理。但要注意,其它一些转义字符序 

   列,如 〃t〃 等不被控件所支持。  



我们一般只处理按钮控件一种通知消息:BN_CLICKED,该消息表示用 

户单击了该按钮控件。按钮控件的另外一种通知消息是 

BN_DOUBLECLICKED,它表示用户双击了按钮控件,但是一般情况下我 

们不需要处理下
返回目录 上一页 下一页 回到顶部 0 0
未阅读完?加入书签已便下次继续阅读!
温馨提示: 温看小说的同时发表评论,说出自己的看法和其它小伙伴们分享也不错哦!发表书评还可以获得积分和经验奖励,认真写原创书评 被采纳为精评可以获得大量金币、积分和经验奖励哦!