关于单文档程序的一些问题

至善者善之敌 2011-03-10 01:26:36
在单文档中动态创建了一个

mainfrm.h中
CCoolBar m_wndMyBar4;
CRichEditCtrl m_sendEditCtrl;
CRichEditCtrlEx m_RichEdit;


[code=C/C++]
mainfrm.cpp中动态创建
m_wndMyBar4.Create(_T("我的控制条4"), this,CSize(960,105),TRUE,126);
然后再动态创建
m_sendEditCtrl.Create(WS_VSCROLL|WS_CHILD|WS_VISIBLE|ES_AUTOVSCROLL|ES_MULTILINE|ES_WANTRETURN,CRect(0,0,0,0),&m_wndMyBar4,1102);




问题来了我现在需要把一个m_RichEdit和动态创建的m_sendEditCtrl关联起来,但我这样做没有效果,改如何关联呢

void CMainFrame::DoDataExchange(CDataExchange* pDX)
{
// TODO: Add your specialized code here and/or call the base class
DDX_Control(pDX, 1102, m_RichEdit);
CFrameWnd::DoDataExchange(pDX);
}

...全文
137 16 打赏 收藏 转发到动态 举报
写回复
用AI写文章
16 条回复
切换为时间正序
请发表友善的回复…
发表回复
至善者善之敌 2011-03-14
  • 打赏
  • 举报
回复
[Quote=引用 14 楼 xianglitian 的回复:]
你的工程我没编过去
也还没仔细看
不过m_RichEdit是什么?
[/Quote]

已经解决了,结贴!
Dnkuni 2011-03-13
  • 打赏
  • 举报
回复
试试看这样行不m_RichEdit.SubclassWindow(m_sendEditCtrl.Detach());
向立天 2011-03-12
  • 打赏
  • 举报
回复
你也给我发邮件了是吧
我还是那个帖子里的问题
控件是动态创建的
你的关联指得是什么?
至善者善之敌 2011-03-12
  • 打赏
  • 举报
回复
[Quote=引用 10 楼 feiyangdn 的回复:]
这个问题好像跟我碰到的问题一样,我有2个搜索框,一个在对话框中一个在工具栏上,修改了工具栏的编辑框,对话框中的内容要跟着变化,反之亦然,我是要消息机制实现的。
父窗口是可以得到EN_CHANGE消息的,编辑哪个,修改另一个就可以了。
[/Quote]

你这个和我说的是两个问题:(
向立天 2011-03-12
  • 打赏
  • 举报
回复
你的工程我没编过去
也还没仔细看
不过m_RichEdit是什么?
至善者善之敌 2011-03-12
  • 打赏
  • 举报
回复
是的,给你发邮件了,控件是动态创建的,我再描述一下吧,一个文档程序,我分割窗口后在一个窗口上动态创建了m_wndMyBar4.Create(_T("我的控制条4"), this,CSize(960,105),TRUE,126); 然后在m_wndMyBar4又动态创建了m_sendEditCtrl.Create(WS_VSCROLL|WS_CHILD|WS_VISIBLE|ES_AUTOVSCROLL|ES_MULTILINE|ES_WANTRETURN,CRect(0,0,0,0),&m_wndMyBar4,1102); 现在我想把m_RichEdit关联到m_sendEditCtrl这个控件上
feiyangdn 2011-03-11
  • 打赏
  • 举报
回复
这个问题好像跟我碰到的问题一样,我有2个搜索框,一个在对话框中一个在工具栏上,修改了工具栏的编辑框,对话框中的内容要跟着变化,反之亦然,我是要消息机制实现的。
父窗口是可以得到EN_CHANGE消息的,编辑哪个,修改另一个就可以了。
至善者善之敌 2011-03-11
  • 打赏
  • 举报
回复
我先在怀疑是不是动态创建了两次,再在上边子类化就不好使了?
至善者善之敌 2011-03-11
  • 打赏
  • 举报
回复
悲剧,我这怎么都正常
Eleven 2011-03-11
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 babilife 的回复:]
恩,我下午又从新发了一份,问题还是依旧? 子类化返回0
[/Quote]
恩,是的,程序启动的时候,界面就显示不正常~
至善者善之敌 2011-03-11
  • 打赏
  • 举报
回复
恩,我下午又从新发了一份,问题还是依旧? 子类化返回0
Eleven 2011-03-11
  • 打赏
  • 举报
回复
你发到我邮箱里程序无法正常,程序启动的时候,窗口最上面就显示不完全,表情按钮点击无反应
Eleven 2011-03-11
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 babilife 的回复:]
引用 2 楼 visualeleven 的回复:
m_RichEdit.SubclassWindow(m_sendEditCtrl.GetSafeHwnd());
----------------------------------------------------------------
怎么个不行?m_RichEdit对象还是没有关联上m_sendEditCtrl动态创建的窗口吗?
……
[/Quote]
SubclassWindow()失败?返回0?
至善者善之敌 2011-03-11
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 visualeleven 的回复:]
m_RichEdit.SubclassWindow(m_sendEditCtrl.GetSafeHwnd());
----------------------------------------------------------------
怎么个不行?m_RichEdit对象还是没有关联上m_sendEditCtrl动态创建的窗口吗?
[/Quote]

是啊,我也就发你邮箱了。。我查了下应该是子类化没有成功
Eleven 2011-03-11
  • 打赏
  • 举报
回复
m_RichEdit.SubclassWindow(m_sendEditCtrl.GetSafeHwnd());
----------------------------------------------------------------
怎么个不行?m_RichEdit对象还是没有关联上m_sendEditCtrl动态创建的窗口吗?
至善者善之敌 2011-03-11
  • 打赏
  • 举报
回复
我让这帖子从新复活,

上个帖子N多高手回复了,但问题依旧,我在int CMainFrame::OnCreate(LPCREATESTRUCT lpCreateStruct)
{


if(!m_sendEditCtrl.Create(WS_VSCROLL|WS_CHILD|WS_VISIBLE|ES_AUTOVSCROLL|ES_MULTILINE|ES_WANTRETURN,CRect(0,0,0,0),&m_wndMyBar4,102))
return -1;
m_sendEditCtrl.ModifyStyleEx(0,WS_EX_CLIENTEDGE);
m_RichEdit.SubclassWindow(m_sendEditCtrl.GetSafeHwnd()); //子类化
}


最后边加入了子类化,仍然不行

15,979

社区成员

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

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