请教关于控件焦点问题 在一个对话框中有很多控件(多于50个),它们分成N个组,用一变量(m_nSel)保存最新获得焦点的控件所属的组号。例如:有30个控件,分成5组,当第一组中的任何一个组件获得焦点时,m_nSel = 1由于控件数过多,不想为每一个控件处理SetFocus函数各位请帮帮我,现在急需解决。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 有个处理消息范围(RANGE)的,把成组的控件ID设成连续的就可以了 把成组的控件ID设成连续的,然后在头文件中begin_message_map() //手工加入 ON_COMMAND_RANGE(ID_FIRST,ID_END,SetFocus); //end_message_map() 问题解决了,我得载了OnCmdMsg函数。各位帮我看看,这种方法好不好。OnCmdMsg(UINT nID, int nCode, void* pExtra, AFX_CMDHANDLERINFO* pHandlerInfo) { // TODO: Add your specialized code here and/or call the base class if ((EN_SETFOCUS == nCode) || //edit box (CBN_SETFOCUS == nCode) || //combo box (0x004efff9 == nCode)) //data time picker 这里有点问题 { SelectItem(nID); } return CDialog::OnCmdMsg(nID, nCode, pExtra, pHandlerInfo);}这里有个问题,时间控件焦点我不知道是哪个宏,系统用的是WM_NOTIFY消息中的NM_SETFOCUS,0x004efff9 这个值我是通过查看Call Stack窗口中找到的,不知这个值是不是定值? 内核编程 关于build命令怎么用啊 格式 用C++builder写的动态链接库可以给VC6中使用吗 怎样使用键盘的上下左右键,谢谢了 请问C++中的BSTR和COM中的BSTR是一回事吗? select函数的问题,看看你是否真的明白这个函数 共享资源--<atl 深入解析> CString::SpanExcluding()函数的功能 英文软件在中文系统,度的符号变成了“?” 内存映射文件的使用问题 中文字符的处理 调查一下现在大家VC C++ 编程方面都买什么书了,有兴趣的列举一下!:) 救命呀"对一未命名文件进行查找失败"
在头文件中
begin_message_map()
//手工加入
ON_COMMAND_RANGE(ID_FIRST,ID_END,SetFocus);
//
end_message_map()
OnCmdMsg(UINT nID, int nCode, void* pExtra, AFX_CMDHANDLERINFO* pHandlerInfo)
{
// TODO: Add your specialized code here and/or call the base class
if ((EN_SETFOCUS == nCode) || //edit box
(CBN_SETFOCUS == nCode) || //combo box
(0x004efff9 == nCode)) //data time picker 这里有点问题
{
SelectItem(nID);
}
return CDialog::OnCmdMsg(nID, nCode, pExtra, pHandlerInfo);
}
这里有个问题,时间控件焦点我不知道是哪个宏,系统用的是WM_NOTIFY消息中的NM_SETFOCUS,
0x004efff9 这个值我是通过查看Call Stack窗口中找到的,不知这个值是不是定值?