怎样在程序中动态的设置Button 的Default button属性???

rolim 2006-12-11 03:59:54
我用了 SetButtonStyle(BS_DEFPUSHBUTTON)
但是只是Button的外表变了,按回车没用,
哪位达人能指点一下具体怎么做?
...全文
210 13 打赏 收藏 转发到动态 举报
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
rolim 2006-12-12
  • 打赏
  • 举报
回复
多谢各位,小弟已经实现
wsb_8224 2006-12-12
  • 打赏
  • 举报
回复
一个消息函数,类向导中有,直接加入即可!
rolim 2006-12-12
  • 打赏
  • 举报
回复
wsb_8224() :

你说的响应PreTranslateMessage函数,这个函数是手动写到文件中还是系统生成的
leon19850102 2006-12-12
  • 打赏
  • 举报
回复
直接用SetFocus();设置焦点就可以了
wsb_8224 2006-12-11
  • 打赏
  • 举报
回复
响应PreTranslateMessage函数
void CYourDlg::PreTranslateMessage(MSG* pMsg)
{
if (WM_KEYFIRST <= pMsg->message && pMsg->message <= WM_KEYLAST)
{
if(pMsg->message==WM_KEYDOWN)
{
int iID = ::GetDlgCtrlID(hWnd);
if(iID == IDC_EDIT_INPUT)
{
if(pMsg->wParam==13)//回车
{
//调用BUTTON按钮对应的函数,实现其功能
}
}
}
}
}
lixiaosan 2006-12-11
  • 打赏
  • 举报
回复
Override PreTranslteMessage to filter WM_KEYDOWN message.
When pMsg->wParam equals VK_RETURN and the focus is on the edit, you can use SendMessage to simulate clicking button.
rolim 2006-12-11
  • 打赏
  • 举报
回复
楼上说得对
wsb_8224 2006-12-11
  • 打赏
  • 举报
回复
你的意思是当焦点定在Edit box后,按回车就等于点击它附近的一个BUTTON,实现BUTTON实现的功能吗?
rolim 2006-12-11
  • 打赏
  • 举报
回复
多谢楼上的
但是说的不是我想实现的
我想实现当焦点定在Edit box后,按回车就等于点击它附近的一个BUTTON,按照楼上的做法,焦点无法定在Edit Box 中,就不能在Edit Box中输入任何字符了
lixiaosan 2006-12-11
  • 打赏
  • 举报
回复
1. Cancel the default button property of OK button.
2. Add the default button property to your button.
wsb_8224 2006-12-11
  • 打赏
  • 举报
回复
GetDlgItem(按钮ID)->SetFocus();
rolim 2006-12-11
  • 打赏
  • 举报
回复
楼上的能再说详细一些吗?
Kudeet 2006-12-11
  • 打赏
  • 举报
回复
Use SetFocus to set focus on button

15,979

社区成员

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

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