如何使一个菜单项变为不可用?

efsp 2003-08-19 11:28:24
1.EnableMenuItem()的第二个参数怎么设定,我试过 TRUE 和 FALSE 怎么不管用?

2.书上有一个按钮是具有 BS_PUSHBUTTON 风格的 CButton 对象,是怎么做的?

初学VC,很晕,恳求大家给指明一下!
...全文
98 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
xtmzl 2003-08-19
  • 打赏
  • 举报
回复
GetMenu()是获得主窗口的菜单句柄,
调用CMenu* GetSubMenu( int nPos ) const;
获得子菜单的句柄

CMenu::EnableMenuItem
efsp 2003-08-19
  • 打赏
  • 举报
回复
默认单文档

int CMainFrame::OnCreate(LPCREATESTRUCT lpCreateStruct)
{
.......
CMenu *pTopMenu=GetMenu();
pTopMenu->EnableMenuItem(ID_APP_ABOUT,MF_GRAYED);
.......
}

那个'关于'还是可以点
wangweintk 2003-08-19
  • 打赏
  • 举报
回复
MF_GRAYED 或
MF_DISABLED

不是TRUE和FALSE,看一下MSDN,很简单。

weibo79 2003-08-19
  • 打赏
  • 举报
回复
1、要调用菜单更新命令UI消息控制函数。
通过类向导建立菜单项的更新命令UI函数
如:
void CMyView::OnUpdateDraw(CCmdUI* pCmdUI)
{
pCmdUI->Enable(...);
}
括号里是变为不可用的条件。
mct1025 2003-08-19
  • 打赏
  • 举报
回复
//自己设置菜单
CMenu *pMenu;
pMenu = m_pMainWnd->GetMenu();
pMenu->EnableMenuItem(ID_SYSTEM_DBCONNECT,MF_BYCOMMAND | MF_DISABLED | MF_GRAYED);

CButton myButton1;
// Create a push button.
myButton1.Create(_T("My button"), WS_CHILD|WS_VISIBLE|BS_PUSHBUTTON,
CRect(10,10,100,30), pParentWnd, 1);

vcforever 2003-08-19
  • 打赏
  • 举报
回复
要添加菜单更新命令UI消息控制函数。
通过类向导建立菜单项的更新命令UI函数
如:
void CMyView::OnUpdateDraw(CCmdUI* pCmdUI)
{
pCmdUI->Enable(true or false);
}

joinrry 2003-08-19
  • 打赏
  • 举报
回复
agree

16,471

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC相关问题讨论
社区管理员
  • 基础类社区
  • Web++
  • encoderlee
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……

试试用AI创作助手写篇文章吧