CRichEditCtrl::LimitTextについて教えてください。 – プログラミング – Home

通知
すべてクリア

[解決済] CRichEditCtrl::LimitTextについて教えてください。


丸さん
 丸さん
(@丸さん)
ゲスト
結合: 23年前
投稿: 3
Topic starter  

CRichEditCtrl::LimitTextを使って文字列の上限を決めたいのですが、MFCにはバイト単
位で上限の値を設定すると書いてあるのですがやってみた結果、文字数単位で上限を決
めているみたいなのです。(例:上限を100バイトとしてすると全角の場合200バイト半
角の場合100バイト入力できてしまう)どうにかしてバイト単位で上限を決定したのです
がどうしたらよいでしょうか?ご教授ください。

以下に設定したソースをあげます。

CRichEditCtrl RichEdit;
RichEdit.Create( ENM_DRAGDROPDONE|WS_CHILD | ES_LEFT | ES_AUTOHSCROLL,
crc, this, IDC_DETAIL_EDIT);

RichEdit.LimitText(g_FieldLength[FieldIndex[i]]);

環境:XP,VC++6.0,MFC,SDKプラットホーム


引用未解決
トピックタグ
dairygoods
 dairygoods
(@dairygoods)
ゲスト
結合: 23年前
投稿: 1421
 

LimitTextの動作は、XPにて仕様変更されています。
http://www.microsoft.com/japan/support/kb/articles/J067/8/99.htm

バイト数で制限しようと思ったら、LimitTextに頼らず
自分でWM_CHARやWM_COPYなどをハンドルするしかなさそうです。


返信引用
丸さん
 丸さん
(@丸さん)
ゲスト
結合: 23年前
投稿: 3
Topic starter  

仕様変更の確認をしました。なんとか自前で作ってみます。dairygoodsさん情報提供あ
りがとうございました。


返信引用

返信する

投稿者名

投稿者メールアドレス

タイトル *

プレビュー 0リビジョン 保存しました
共有:
タイトルとURLをコピーしました