• ベストアンサー

エディットボックスとプレグレスコントロール

今までCをやっており、最近C++.NETをやり始めたものです。 参考書片手に頑張っているのですがなかなかうまくいけません。 基礎的な事かもしれませんが、分かる方は教えてくださいm(_ _)m 開始ボタンを押すとエディットボックスにフォーカスをあわせて、 エディットボックスに文字が入力されるとそれにあわせてプログレスコントロールを動かしていきたいのです。 そして入力数が50になったら処理を終了させたいです。 フォーカスをあわすまではいけるのですが、そこから先が分かりません。もしよろしければ誰か教えてください。

質問者が選んだベストアンサー

  • ベストアンサー
  • buihyaku
  • ベストアンサー率29% (97/326)
回答No.1

エディットボックスのEN_CHANGEメッセージをハンドルすればエディットボックスに文字が入力されるたびに、処理が飛んできます。 そこでプログレスバーを進めればよいとおもいます。 EN_CHANGEハンドラは文字が削除されても飛んでくるので、そのつどEditコントロールの文字数をチェックしてプログレスバーを正しい位置にセットしてあげる必要があるかもしれません。

homelike
質問者

お礼

早い回答ありがとうございます! そして気づくのが遅くなって申し訳ありません。 言われたとおりにやったら普通に出来ました。ありがとうございます。 // TODO : これが RICHEDIT コントロールの場合、まず、CDialog::OnInitDialog() 関数をオーバーライドして、 // OR 状態の ENM_CORRECTTEXT フラグをマスクに入れて、 // CRichEditCtrl().SetEventMask() を呼び出さない限り、 // コントロールは、この通知を送信しません。 OnEnChange関数のこのメッセージが良く分からず気になって考えていました。普通に書いたらよかったのですね。。。。 明日には回答を打ち切りますので、得点をもらっちゃって下さい。 どうもありがとうございました☆

関連するQ&A