如何把几个MFC控件组合在一起
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何把几个MFC控件组合在一起相关的知识,希望对你有一定的参考价值。
参考技术A 首先在第一张图片上 右键----设置图片格式-----版式---衬于文字下方----确定 然后在第二张图片上 右键----设置图片格式-----版式---衬于文字下方----确定 然后选取图片 首先 点第一张图片 然后 按住---ctrl 键 点击第二张图片 松开ctrl 键 然后在图片上 右键----组合---组合 完成---- 参考技术B 从CWnd派生一个子类,在子类OnCreate函数中动态创建你的5个按钮。CComboBox MFC 控件出现问题
【中文标题】CComboBox MFC 控件出现问题【英文标题】:Getting issue with CComboBox MFC control 【发布时间】:2013-02-01 09:07:08 【问题描述】:我在 MFC 中有一个带有下拉属性的组合框。
当我打开一个包含此组合框的对话框时,该组合框中的文本会突出显示。当我点击它时,就在这个组合框的编辑字段中的最后一个字符旁边,假设我插入了一个字符 C,它写在末尾,但光标移动到开头。
这种情况只发生过一次,如果我将光标移动到结束并开始写入,一切正常。
当焦点丢失时,再次编辑它会导致上述问题。
在代码中也没有对此控件进行任何特殊处理。
我不明白,为什么会这样?
任何建议或建议都会有所帮助。
谢谢
【问题讨论】:
MESSAGE_MAP 对组合框控件 id 有什么影响? 它的id是“8002”,只处理一条消息“ON_CBN_SELCHANGE” 是所有者抽奖组合吗? 不,它不是 ownerdraw 类型 【参考方案1】:您可以在组合框的 ON_CBN_EDITUPDATE 处理程序中尝试此操作-
DWORD dwSel = m_mycombo.GetEditSel();
// Only do this if no characters are selected
if( LOWORD( dwSel ) != LOWORD( dwSel ) ) return;
// code you have added handler for
m_mycombo.SetEditSel( LOWORD( dwSel ), LOWORD( dwSel ) );
【讨论】:
以上是关于如何把几个MFC控件组合在一起的主要内容,如果未能解决你的问题,请参考以下文章
mfc 窗口大小变化时,如何让窗口内部控件也一起随比例改变位置?