MFCでリアルタイムでデータを表示するエディターボックス設定する方法

MFCフレームワークが提供するメッセージメカニズムとコントロールの応答関数を用いることで、編集ボックスでのデータのリアルタイム表示を実現できます。以下はその一例です。

  1. ダイアログクラスで編集ボックスコントロール変数を定義する(例:)
CEdit m_editBox;
  1. ダイアログクラスのOnInitDialog() 関数の中で、コントロールの ID を介して編集ボックスコントロールのポインタを取得します。例:
m_editBox.Attach(GetDlgItem(IDC_EDIT_BOX)->GetSafeHwnd());
  1. Dialogクラスに、たとえば編集ボックスコントロールの内容変更メッセージを処理するメッセージ処理関数を追加する。
afx_msg void OnEnChangeEditBox();
  1. メッセージマップテーブルに、対象のメッセージマップを追加します (サンプル: )
ON_EN_CHANGE(IDC_EDIT_BOX, &MyDialog::OnEnChangeEditBox)
  1. OnEnChangeEditBox()関数でテキストボックスの内容を取得し、関連データを更新します。
void MyDialog::OnEnChangeEditBox()
{
    CString strText;
    m_editBox.GetWindowText(strText);
    
    // 更新数据
    // ...
}

エディットボックスの内容が変更されると、OnEnChangeEditBox() 関数が呼び出され、その関数でデータ更新のロジックを実現できます。

なお、記載したコードは一例であり、実際の状況に応じて調整および改良が必要になります。

bannerAds