VC 按钮激活

mc185023238 2009-08-05 02:07:03
程序里面要用到“按钮1”和“按钮2”两个按钮,现在我想让刚开始的时候“按纽2”为不可用(灰色)状态,当点击“按钮1”执行完相应的函数后才激活“按钮2”,请问我该在“按钮1”的执行函数里面加些什么东西,然后怎么样设置“按钮2”的属性才能实现我的目的呢?
谢谢GS们!
...全文
308 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
sofa120 2009-08-10
  • 打赏
  • 举报
回复
另外要注意的是:

//使菜单项可改
m_bAutoMenuEnable = FALSE;

在框架类的构造函数里改
sofa120 2009-08-10
  • 打赏
  • 举报
回复
另外可以生成ON_UPDATE_COMMAND_UI消息处理函数
设置判断,在按钮1改变后,改变判断值

通过判断值知道是否要UPDATE_COMMAND_UI

IsStart做判断

void CView::OnUpdateStart(CCmdUI *pCmdUI)
{
// TODO: 在此添加命令更新用户界面处理程序代码
if(IsStart)
pCmdUI->Enable(TREU);
else
pCmdUI->Enable(FALSE);
}
shen_wei 2009-08-10
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 lzh19840809 的回复:]
人家都回答了,俺只能干看着人家喝粥了!
[/Quote]
一样
okiss0 2009-08-10
  • 打赏
  • 举报
回复
是啊,这个问题确实比较简单。上面人家都说了好多遍了,我就不再打出来了呀。
当然也可以直接用::EnableWindow( HANDLE Window,Int CmdTarg );这个全局API参数大致是这样的,前面那个参数表示要设置状态的窗口的句柄(也有可能是ID,不是很清楚了,没查。),后面那个是显示状态。True为显示可用,False为禁用变灰色。
绿豆蛙2013 2009-08-07
  • 打赏
  • 举报
回复
人家都回答了,俺只能干看着人家喝粥了!
wsc1509 2009-08-07
  • 打赏
  • 举报
回复
GetDlgItem(IDC_DATA_MID)->EnableWindow(TRUE);--激活
GetDlgItem(IDC_DATA_MID)->EnableWindow(FALSE);--变灰
mc185023238 2009-08-05
  • 打赏
  • 举报
回复
我建的工程是基于菜单的,GetDlgItem(按钮2的ID)->EnableWindow(false);应该加在什么地方呢?
mc185023238 2009-08-05
  • 打赏
  • 举报
回复

谢谢了!我试下先!
zhuzhenlei 2009-08-05
  • 打赏
  • 举报
回复
如果是mfc的话,可以这样
在dlg的OnInitDialog()中
GetDlgItem(按钮2的ID)->EnableWindow(false);//失效
在按钮1函数的末尾处
GetDlgItem(按钮2的ID)->EnableWindow(true);//激活
岁月小龙 2009-08-05
  • 打赏
  • 举报
回复
GetDlgItem(IDC_DATA_MID)->EnableWindow(TRUE);--激活
GetDlgItem(IDC_DATA_MID)->EnableWindow(FALSE);--变灰
Tolirry 2009-08-05
  • 打赏
  • 举报
回复
GetDlgItem(IDC_BUTTON2)->EnableWindow(FALSE);
GetDlgItem(IDC_BUTTON2)->EnableWindow(TRUE);

15,979

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 界面
社区管理员
  • 界面
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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