MzGridMenu类参考

弹出表格式菜单 更多...

#include <MzGridMenu.h>

继承自UiWin

所有成员的列表。

公有成员

BOOL AppendMenuItem (UINT uIDNewItem, LPCTSTR lpszItem, ImagingHelper *pImage=NULL, ImagingHelper *pImagePressed=NULL)
 添加一个按钮菜单项,正在运行时不能添加按钮菜单项!!!
virtual INT CalcContentHeight (void)
 计算(返回)控件的内容总高度
BOOL EnableMenuItem (UINT uIDItem, BOOL bEnabled)
 指定菜单项是否处于可用状态
BOOL EndGridMenu (void)
 (窗口方法)结束GridMenu弹出窗口
BOOL GetBGRect (RECT *prcBG)
 (窗口方法)取得背景的位置矩形,如果使用窗口形式弹出则为在屏幕上的位置,如果使用控件形式则为在附属窗口上的位置
BOOL IsContinue (void)
 (窗口方法)判断弹出窗口是否在运行中
BOOL IsMenuItemEnabled (UINT uIdItem)
 取得当前菜单项的可用状态
BOOL IsTextOnly (void)
 判断当前菜单是否是只显示文本的状态
BOOL ModifyMenuItem (UINT uIDItem, LPCTSTR lpszItem, ImagingHelper *pImage=NULL, ImagingHelper *pImagePressed=NULL)
 修改按钮菜单项
 MzGridMenu (void)
BOOL RemoveAllMenuItem (void)
 移除所有已添加的按钮项,正在运行时不能移除按钮项!!!
BOOL SetBGImage (HBITMAP hBitmap)
 (窗口方法)设置当前的背景图片,如果弹出窗口背景图片已改变的话
BOOL SetBorderLine (UINT uFlag)
virtual void SetPos (int x, int y, int w, int h, UINT flags=0)
 设置控件的位置
void SetTextOnly (BOOL bTextOnly=FALSE)
 设置整个菜单是否只显示文本而不显示图片
BOOL TrackGridMenuDialog (HWND hWnd, INT nBottomHeight, BOOL bEndSelect=TRUE, UINT uAnimTypeShow=MZ_ANIMTYPE_NONE, UINT uAnimTypeHide=MZ_ANIMTYPE_NONE)
 (窗口方法)使用对话框方式弹出GridMenu,如果用户选择了其中一个菜单,则会发生MZ_WM_COMMAND消息给hWnd窗口。
virtual ~MzGridMenu (void)

保护成员

virtual void PaintWin (HDC hdcDst, RECT *prcWin, RECT *prcUpdate)
 绘制控件

详细描述

弹出表格式菜单

可以参考一下代码使用: 弹出ButtonBox m_Box.RemoveAllButton(); m_Box.AppendMenuItem(MZ_IDC_BTN_MENU, L"软件工程师", NULL, NULL); m_Box.AppendMenuItem(102, L"测试工程师", NULL, NULL); m_Box.AppendMenuItem(103, L"项目经理", NULL, NULL); m_Box.TrackGridMenuDialog(m_hWnd, 180); 然后在重载void OnMzCommand(WPARAM wParam, LPARAM lParam)方法,处理Command消息

如果想在点击主窗口时隐藏弹出窗口可以重载void OnLButtonDown(UINT fwKeys, int xPos, int yPos)方法, 并在中间添加一句m_Box.EndGridMenu();就可以了

注意:MzGridMenu运行时MzGridMenu变量必须有效!


构造及析构函数文档

MzGridMenu::MzGridMenu ( void   ) 
virtual MzGridMenu::~MzGridMenu ( void   )  [virtual]

成员函数文档

BOOL MzGridMenu::AppendMenuItem ( UINT  uIDNewItem,
LPCTSTR  lpszItem,
ImagingHelper pImage = NULL,
ImagingHelper pImagePressed = NULL 
)

添加一个按钮菜单项,正在运行时不能添加按钮菜单项!!!

参数:
uIDNewItem -- 按钮项的ID值,将用于Command消息中
lpszItem -- 菜单项的显示文本
pImage -- 菜单项的图片
pImagePressed -- 菜单项按下时的图片
返回:
返回TRUE表示添加成功
virtual INT MzGridMenu::CalcContentHeight ( void   )  [virtual]

计算(返回)控件的内容总高度

重载UiWin

BOOL MzGridMenu::EnableMenuItem ( UINT  uIDItem,
BOOL  bEnabled 
)

指定菜单项是否处于可用状态

参数:
uIDItem -- 已添加的菜单项的ID
bEnabled -- 菜单项是否处于可用状态
返回:
返回TRUE表示成功设定菜单项的状态
BOOL MzGridMenu::EndGridMenu ( void   ) 

(窗口方法)结束GridMenu弹出窗口

返回:
返回TRUE表示隐藏成功
BOOL MzGridMenu::GetBGRect ( RECT *  prcBG  ) 

(窗口方法)取得背景的位置矩形,如果使用窗口形式弹出则为在屏幕上的位置,如果使用控件形式则为在附属窗口上的位置

参数:
prcBG -- 存放图片位置矩形的指针
返回:
返回TRUE表示成功取得矩形位置
BOOL MzGridMenu::IsContinue ( void   ) 

(窗口方法)判断弹出窗口是否在运行中

返回:
返回TRUE表示正在运行
BOOL MzGridMenu::IsMenuItemEnabled ( UINT  uIdItem  ) 

取得当前菜单项的可用状态

参数:
uIDItem -- 已添加的菜单项的ID
返回:
返回TRUE菜单项当前可用
BOOL MzGridMenu::IsTextOnly ( void   ) 

判断当前菜单是否是只显示文本的状态

返回:
返回TRUE表示只显示文本而不显示图片
BOOL MzGridMenu::ModifyMenuItem ( UINT  uIDItem,
LPCTSTR  lpszItem,
ImagingHelper pImage = NULL,
ImagingHelper pImagePressed = NULL 
)

修改按钮菜单项

参数:
uIDItem -- 按钮项的ID值,将用于Command消息中
lpszItem -- 菜单项的显示文本
pImage -- 菜单项的图片
pImagePressed -- 菜单项按下时的图片
返回:
返回TRUE表示添加成功
virtual void MzGridMenu::PaintWin ( HDC  hdcDst,
RECT *  prcWin,
RECT *  prcUpdate 
) [protected, virtual]

绘制控件

重载此函数可以自定义控件的绘制

参数:
hdcDst 目的DC
prcWin 控件所在区域(以HDC的左上角为原点)
prcUpdate 需要更新的区域(以HDC的左上角为原点)

重载UiWin

BOOL MzGridMenu::RemoveAllMenuItem ( void   ) 

移除所有已添加的按钮项,正在运行时不能移除按钮项!!!

返回:
返回TRUE表示移除成功
BOOL MzGridMenu::SetBGImage ( HBITMAP  hBitmap  ) 

(窗口方法)设置当前的背景图片,如果弹出窗口背景图片已改变的话

参数:
hBitmap -- 背景图片的句柄,类内部自动调用DeleteObject删除图片
返回:
返回TRUE表示设置成功
BOOL MzGridMenu::SetBorderLine ( UINT  uFlag  ) 
virtual void MzGridMenu::SetPos ( int  x,
int  y,
int  w,
int  h,
UINT  flags = 0 
) [virtual]

设置控件的位置

参数:
x X 坐标
y Y 坐标
w 
h 
flags 可以是以下值的合并:0,SP_NOSIZE, SP_NOMOVE

重载UiWin

void MzGridMenu::SetTextOnly ( BOOL  bTextOnly = FALSE  ) 

设置整个菜单是否只显示文本而不显示图片

参数:
bTextOnly -- TRUE表示只显示文本而不显示图片
BOOL MzGridMenu::TrackGridMenuDialog ( HWND  hWnd,
INT  nBottomHeight,
BOOL  bEndSelect = TRUE,
UINT  uAnimTypeShow = MZ_ANIMTYPE_NONE,
UINT  uAnimTypeHide = MZ_ANIMTYPE_NONE 
)

(窗口方法)使用对话框方式弹出GridMenu,如果用户选择了其中一个菜单,则会发生MZ_WM_COMMAND消息给hWnd窗口。

参数:
hWnd -- 弹出窗口的附属窗口
prcMenuOfScreen -- 弹出窗口的可显示区域的屏幕坐标。这个区域只是一个最大范围,运行时获得GridMenu的精确位置可以使用GetBGRect方法。
bEndSelect -- 当用户点击了一个菜单项是否自动结束窗口
返回:
返回TRUE表示窗口成功弹出

该类的文档由以下文件生成:

Generated at Tue Feb 9 15:09:59 2010 for Meizu M8 SDK Documentation by  doxygen 1.6.1