0

私はこのような検索ボックスコントロールを探しています ここに画像の説明を入力

MFC で使用できるコントロールはありますか、それとも独自に作成する必要がありますか?

参照できる例/参照コードはすべてあります。グーグルを試しましたが、このタイプのコントロールではなく、CEditComboBoxの例を取得しています。

前もって感謝します

4

2 に答える 2

2

VS2008 SP1 以降を使用している場合は、 CMFCEditBrowseCtrl があります

ボタン付きの編集コントロールです。ボタンを押したときの「ファイルの参照」または「フォルダーの参照」アクションが組み込まれていますが、独自のカスタム アクション (検索) を作成し、ボタン イメージをカスタマイズすることもできます。

アクションをカスタマイズする方法については、 EnableBrowseButtonOnBrowseのドキュメントを確認し、画像をカスタマイズするにはSetBrowseButtonImageを確認してください。

于 2012-06-12T08:46:43.953 に答える
0

CListBox での検索を除いて、このような機能も必要でした。ユーザーが編集ボックスに入力したときに EN_CHANGE 通知を使用して、私がなんとかしたことは次のとおりです。

  • m_sSearch は、CEdit コントロールに関連付けられた CString です。
  • m_lbRequest は、同じコントロールに関連付けられた CListBox です
void CRequestDlg::OnEnChangeEditSearch()
{   
    UpdateData(TRUE);
    string sEdit = m_sSearch.GetBuffer(m_sSearch.GetLength());
    string sTmp;
    for ( int n_pos = 0; n_pos < m_lbRequest.GetCount(); n_pos++ )
    {
        CString temp;
        m_lbRequest.GetText(n_pos, temp);
        sTmp = string(temp);
        if ( sTmp.find(m_sSearch) != string::npos )
        {
            m_lbRequest.SetCurSel(n_pos);
            break;
        }
    } 
    UpdateData(FALSE);
}
于 2013-08-01T13:48:10.040 に答える