CWindowの使い方を教えてください

[戻る]
からくり 2002/09/12(木) 15:37:22
CWindowクラスを使用してテキストファイルを表示させているのですが、表示したデータを入出
力不可の状態にしたいのですが、やり方が分かりません。EnableWindowを使うと画面全体が使
えなくなってしまいました。
基本的な使い方が分かっていないと思うのですが、何方かご存知の方がいましたら教えてくださ
い。
環境はVC++6.0、windows2000です。

wood 2002/09/12(木) 17:42:48
スタティックテキストコントロールに表示するようにすれば良いのではないですか

dairygoods 2002/09/12(木) 18:12:22
もしエディットボックスを使っておられるなら、EM_SETREADONLYで可能です。

からくり 2002/09/12(木) 20:17:29
CEditViewクラスは使用しています。すみませんが、EM_SETREADONLYの使い方を教えていただ
けませんでしょうか。ヘルプを参照しようとおもったのですが、英語で分かりませんでした。
面倒かと思いますが、お願い致します。

tib 2002/09/12(木) 21:24:29
この程度の英語は理解してほしい物です。手がかりになる単語(専門用語?)がたくさんあ
りますし、それらを除けば文法的には中2程度の文章ですよ。

で、要するにPostMessage()を使うわけですね。readonlyに
する:(EditBoxへのポインタ)->PostMessage( EM_SETREADONLY, (WPARAM)TRUE, 0 );
しない:(EditBoxへのポインタ)->PostMessage( EM_SETREADONLY, (WPARAM)FALSE, 0 );

という具合です。PostMessage()が0を返してくればエラーです。

からくり 2002/09/18(水) 10:56:29
CEditViewクラスでPostMessageを使ってみたのですが、入出力が可能でした。
基本的な事項だと思うのですが、PostMessageの使い方で注意しないといけない点があるのでし
ょうか。

ku 2002/09/18(水) 11:55:45
tibさんが(EditBoxへのポインタ)->PostMessage()と書いてますけど
その通りにやってみました?
CEditViewで自分自身にPostMessage()してしまったのではないですか?

GetEditCtrl().SetReadOnly(TRUE);
か
GetEditCtrl().SendMessage(EM_SETREADONLY, (WPARAM)TRUE, 0);
でやれますね

古いスレッドには追加発言できません。