エディットボックスへの入力について – プログラミング – Home

エディットボックスへの入力について
 
通知
すべてクリア

エディットボックスへの入力について


影
 影
(@影)
ゲスト
結合: 19年前
投稿: 2
Topic starter  

VC++にてMFCを使用せずに勉強をしています。
下記のような表示を行いたいのですが、どのようにすればよいでしょうか。

エディットボックス1

エディットボックス2(ユーザー入力不可)

エディットボックス3~・・・

エディットボックスの1に5桁の数値を入力したら2のほうに名前が自動で表示される
というふうにしたいのですが、

数値と名前で1レコードとしてファイルに10このレコード保管してあります。
3桁目で数値が一致しても表示するという形式を作っています。
わかりにくい説明で申し訳ありません。


引用解決済
トピックタグ
επιστημη
 επιστημη
(@επιστημη)
ゲスト
結合: 21年前
投稿: 600
 

Edit1 が発するメッセージ: EN_CHANGE をハンドルすればいいんじゃないかしら。


返信引用
影
 影
(@影)
ゲスト
結合: 19年前
投稿: 2
Topic starter  

レスありがとうございます。
上記レスを参考にメッセージを利用しようと思ったのですが
うまくEN_CHANGEメッセージを拾うことができません。
仕事でしばらくPCに触れれないので深夜に試行錯誤してみます。
ありがとうございました!


返信引用
Blue
 Blue
(@Blue)
ゲスト
結合: 20年前
投稿: 1467
 

> うまくEN_CHANGEメッセージを拾うことができません。
うまく拾えないとは?サブクラス化していますか?


返信引用
Blue
 Blue
(@Blue)
ゲスト
結合: 19年前
投稿: 59
 

> サブクラス化していますか?
サブクラス化関係なかったです。

WM_COMMANDメッセージで送られてくるので、

if (lp == (LPARAM)hEdit && HIWORD(wp) == EN_CHANGE)

みたいな判定文で取れます。

参考
http://wisdom.sakura.ne.jp/system/winapi/win32/win66.html


返信引用
wood
 wood
(@wood)
ゲスト
結合: 23年前
投稿: 895
 

私は「WM_KILLFOCUS 」の方が扱いやすかったよ


返信引用
リンク
 リンク
(@リンク)
ゲスト
結合: 22年前
投稿: 35
 

入力中に5桁(3桁なのかな)に達したら表示するようなので
WM_KILLFOCUSでは無理なのでは?


返信引用
wood
 wood
(@wood)
ゲスト
結合: 23年前
投稿: 895
 

キー入力するたびにデータの検索処理を行なうと言うのであれば「WM_KILLFOCUS」では
確かに無理です
でも、レスポンスわるそう


返信引用
επιστημη
 επιστημη
(@επιστημη)
ゲスト
結合: 21年前
投稿: 600
 

んー、たんびにディスクがこがこやってちゃ洒落ならんだろうけど、
検索対象がon-memoryに置ける程度の分量ならリニア・サーチでもない限りさほどにキツくはな
いかもです。
# 実測するのが一番ね。


返信引用

返信する

投稿者名

投稿者メールアドレス

タイトル *

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