• 菜单类


    CMenu 菜单类
    
    成员函数
    1. CreateMenu()和CreatePopupMenu(),这两个函数用来创建一个菜单实例,CreateMenu()创建的是普通的菜单实例,如果想创建弹出式菜单,就要用CreatePopupMenu()函数。
    
    2. AppendMenu()向菜单中添加一个子项,这个函数有两个主要的参数。第一个UINT nFlags,这个参数表明了该子项的属性特征,可以这样说,这个参数规定了菜单的样式和功能。后面会详细讲这个参数所能使用的值。第二个参数UINT_PTR nIDNewItem,根据nFlags使用不同的设置,该参数将标明菜单的资源ID或在这个菜单中的索引号。第三个参数可以省略,如果不省略,可以传入一个字符串,这个字符串将显示在菜单中(因为我准备用突破表示菜单项,所以我的工程中省略了这个参数)。
    
    3. DrawItem(),这是一个虚函数,如果菜单设置成可以自绘类型,则这个函数将在生成菜单、弹出菜单、选中菜单、点击菜单等时由系统框架调用。因此,这个函数是一个很有用的函数,它可以帮你绘制出各种样式的菜单。
    
    4. MeasureItem()也是一个虚函数,当菜单被创建的时候由系统框架调用。这个函数用来设置菜单的大小。
    
    
    
    
    
    数据成员
    m_hMenu
    指定附加给CMenu对象的窗口菜单的句柄
    构造函数
    CMenu
    构造一个CMenu对象
    初始化
    Attach
    附加一个Windows菜单句柄给CMenu对象
    Detach
    从CMenu对象中分离Windows菜单的句柄,并返回该句柄
    FromHandle
    返回一个指向给定Windows菜单句柄的CMenu对象的指针
    GetSafeHmenu
    返回由CMenu对象包含的m_hMenu值
    DeleteTempMap
    删除由FromHandle成员函数创建的所有临时CMenu对象
    CreateMenu
    创建一个空菜单,并将其附加给CMenu对象
    CreatePopupMenu
    创建一个空的弹出菜单,并将其附加给CMenu对象
    LoadMenu
    从可执行文件中装载菜单资源,并将其附加给CMenu对象LoadMenuIndirect从内存的菜单模板中装载菜单,并将其附加给CMenu对象
    DestroyMenu
    销毁附加给CMenu对象的菜单,并释放菜单占用的内存
    菜单操作
    DeleteMenu
    从菜单中删除指定的项。如果菜单项与弹出菜单相关联,那么将销毁弹出菜单的句柄,并释放它占用的内存
    TrackPopupMenu
    在指定的位置显示浮动菜单,并跟踪弹出菜单的选择项
    菜单项操作
    AppendMenu
    在该菜单末尾添加新的菜单项
    CheckMenuItem
    在弹出菜单的菜单项中放置或删除检测标记
    CheckMenuRadioItem
    将单选钮放置在菜单项之前,或从组中所有的其它菜单项中删除单选钮
    SetDefaultItem
    为指定的菜单设置缺省的菜单项GetDefaultItem获取指定的菜单缺省的菜单项
    EnableMenuItem
    使菜单项有效、无效或变灰GetMenuItemCount决定弹出菜单或顶层菜单的项数
    GetMenuItemID
    获取位于指定位置菜单项的菜单项标识
    GetMenuState
    返回指定菜单项的状态或弹出菜单的项数
    GetMenuString
    获取指定菜单项的标签GetMenuItemInfo获取有关菜单项的信息
    GetSubMenu
    获取指向弹出菜单的指针
    InsertMenu
    在指定位置插入新菜单项,并顺次下移其它菜单项
    ModifyMenu
    改变指定位置的已存在的菜单项
    RemoveMenu
    从指定的菜单中删除与弹出菜单相关联的菜单项
    SetMenuItemBitmaps
    将指定检测标记的位图与菜单项关联
    GetMenuCountextHelpID
    获取与菜单关联的帮助文本的ID号
    SetMenuCountextHelpID
    设置与菜单关联的帮助文本的ID号
    可覆盖的函数
    DrawItem
    通过框架来调用,其发生于拥有者菜单的可视部分有所改变
    MeasureItem
    通过框架来调用,用于决定当创建了拥有者菜单时的菜单维数
  • 相关阅读:
    leetcode—Swap Nodes in Pairs
    leetcode--Merge k Sorted Lists
    leetcode—Valid Parentheses
    leetcode—3sum
    编程工具(保持更新)
    QT下调用摄像头(opencv2.4.4)
    qtcreator 与 opencv
    在线公式编辑器
    QT学习(对话框)codeblock版本
    QT-opencv小结
  • 原文地址:https://www.cnblogs.com/IMyLife/p/4826116.html
Copyright © 2020-2023  润新知