关于RICHEDIT控件的消息

本文讨论了在CFormView中使用RICHEDIT控件时,如何使系统响应EN_CHANGE消息。作者遇到的问题是onChangeRichedit1()函数未被调用。楼上的回复提供了解决方案,包括在OnInitialUpdate()中设置事件掩码,启用ENM_CHANGE,以及确保使用AfxInitRichEdit初始化富文本控件。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

各位好,请帮忙。  
          我用CFormView类,在Form上放一个RICHEDIT控件,我要系统响应EN_CHANGE消息,  
  我添加  
  在workView.h  
  //   Generated   message   map   functions  
  protected:  
  //{{AFX_MSG(CWorkView)  
                  afx_msg   void   OnChangeRichedit1();  
  //}}AFX_MSG  
  DECLARE_MESSAGE_MAP()  
  在workView.cpp  
  BEGIN_MESSAGE_MAP(CWorkView,   CFormView)  
  //{{AFX_MSG_MAP(CWorkView)  
   
  ON_EN_CHANGE(IDC_RICHEDIT1,   OnChangeRichedit1)  
   
  //}}AFX_MSG_MAP  
  //   Standard   printing   commands  
   
   
  void   CWorkView::OnChangeRichedit1()    
   
          可是我跟踪OnChangeRichedit1()函数系统不响应。  
           
   
  问题点数:50、回复次数:5Top

src="关于RICHEDIT控件的消息 VC-MFC - 基础类 - 优快云社区 community_youkuaiyun.com.files/Board.htm" frameborder="0" scrolling="no">

1 楼Flysnow(飞雪)回复于 2002-03-18 11:50:56 得分 0

关于RICHEDIT控件是很奇怪,帮你向前顶一下Top

2 楼Wugifer()回复于 2002-03-18 13:17:51 得分 50

在CMyFormView::OnInitialUpdate()最后加上下面的代码:  
   
  CWnd*   pWnd   =   GetDlgItem(   IDC_MYRICHEDIT   );  
  CRichEditCtrl*   pRich   =   (CRichEditCtrl*)(   pWnd   );  
  long   nEvn   =   pRich   ->GetEventMask();  
  nEvn   |=   ENM_CHANGE;  
  pRich   ->SetEventMask(   nEvn   );  
   
  然后就可以了Top

3 楼ygd(人生短暂,及时行乐。准备成熟中)回复于 2002-03-18 13:25:51 得分 0

来晚了Top

4 楼superzhang1977()回复于 2002-03-18 13:28:54 得分 0

RichEdit控件需要在使用前使用AfxInitRichEdit   初始化Top

5 楼FlyOverSea(雁渡寒潭)回复于 2002-05-31 21:45:46 得分 0

我也遇到这样的问题,不知道如何解决 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值