リッチエディットボックスのイベントマスク


ハイパー初心者  2006-08-04 14:11:07  No: 62667

.NET WINXP MFC です。

リッチエディットコントロールで、OnEnChangeRicheditをハンドルしたところ、関数の中に下記のコメントがありました。

  // TODO :  これが RICHEDIT コントロールの場合、まず、CFormView::OnInitDialog() 関数をオーバーライドして、
  // OR 状態の ENM_CORRECTTEXT フラグをマスクに入れて、
  // CRichEditCtrl().SetEventMask() を呼び出さない限り、
  // コントロールは、この通知を送信しません。

この意味が分かりません。
「イベントマスク」や「ENM_CORRECTTEXT」や「SetEventMask」などで「くぐぐって」みたのですが、探し方が悪いのか、MFCで、参考になるものは見つかりませんでした。

実際にリッチエディットボックスに書き込みをしても、OnEnChangeRichedit は呼ばれていません。

初歩的なことで恥ずかしいのですが、アドバイスをお願いいたします。


ハイパー初心者  2006-08-04 14:34:47  No: 62668

あちこち「くぐって」いて、

m_richedit.SetEventMask(ENM_SELCHANGE|ENM_UPDATE|ENM_CHANGE);

を見つけ、OnInitialUpdateの中に書き込んだところ、OnEnChangeRicheditが呼ばれるようになりました。

ただ、これですと、ENM_CORRECTTEXT  は使っていません。
これでよろしいのでしょうか。

ENM_CORRECTTEXT  を書き加えても、OnEnChangeRicheditは呼ばれています。


※返信する前に利用規約をご確認ください。

※Google reCAPTCHA認証からCloudflare Turnstile認証へ変更しました。






  このエントリーをはてなブックマークに追加