人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

VC++で入出力可能なテキストボックスを読み込み専用に属性を変更する方法についておしえてください。
※動的に変更する方法でお願いします。

●質問者: daisuke0602
●カテゴリ:ビジネス・経営 コンピュータ
✍キーワード:テキスト ボックス 属性
○ 状態 :終了
└ 回答数 : 4/4件

▽最新の回答へ

1 ● lupu
●18ポイント

http://www.hatena.ne.jp/1139915761

人力検索はてな - VC++で入出力可能なテキストボックスを読み込み専用に属性を変更する方法についておしえてください。 ※動的に変更する方法でお願いします。 ..

テキストボックスのウィンドウハンドルをhEditとします。

SetWindowLong(hEdit, GWL_STYLE, GetWindowLong(hEdit, GWL_STYLE)|ES_READONLY);

これでOKです♪

(※逆にはずす時は、排他的論理輪を使います。)


2 ● ohmix1
●18ポイント

http://forums.belution.com/ja/vc/000/311/14s.shtml

[00031114](SET)] EDIT のリードオンリー属性を動的に変更したい

CEditクラスの SetReadOnly(TRUE/FALSE) を利用するのがスマートだと思います。


3 ● aki73ix
●17ポイント

http://forums.belution.com/ja/vc/000/134/12.shtml

[00013412] エディットボックスを読み取り専用に

SendDlgItemMessage(hDlg,IDC_EDIT1,EM_SETREADONLY,true,0); // True なら読み込み専用,Falseなら解除

もしくは

SendMessage(GetDlgItem(hDlg,IDC_EDIT1),EM_SETREADONLY,true,0);

で可能です

EM_SETREADONLYをメッセージで送ってやることで制御するのが一般的だと思います

http://nifberry.727.net/test/hatena179.lzh

これは今作ったサンプルです


4 ● tezcello
●17ポイント

http://rararahp.cool.ne.jp/cgi-bin/lng/vc/vclng.cgi?print+200502...

コード内でダイアログを読み取り専用に。

CEdit::SetReadOnly で変更できるようですね。


僕なら、リソースエディタでそのテキストボックスにコントロール変数を m_EDIT1 のように割当て(右クリックで出来ますよね)

必要なところで、

m_EDIT1.SetReadOnly(0); // 入力可

または、

m_EDIT1.SetReadOnly(0); // 入力不可

とします。

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ