1

リストボックスにいくつかの文字列を追加しようとしています.関数からメッセージを送信して文字列をリストボックスに追加することは可能ですか?

4

2 に答える 2

3

正しいコードを取得しました。それは次のとおりです....

LPTSTR  lpBuffer = m_WindowTitle.GetBuffer( );
HWND listHWnd = ::GetDlgItem(AfxGetMainWnd()->m_hWnd, IDC_LIST1);
SendMessage(listHWnd, LB_ADDSTRING, 0, (LPARAM)lpBuffer);
m_WindowTitle.ReleaseBuffer ( );

助けてくれてありがとう。

于 2012-07-12T05:49:37.490 に答える
2

リストボックスのメンバー変数を作成して、m_ctrlListBox.AddStringまたは

CListBox *pMyList = (CListBox *) GetDlgItem(IDC_LIST1);
pMyList->AddString("My String");

メッセージを送信したい場合は、これらを試すことができます

SendMessage(MAKEINTRESOURCE(IDC_LIST1), LB_INSERTSTRING, Index, (LPARAM)lpBuffer);

SendMessage(hWnd, LB_ADDSTRING, NULL, (LPARAM)lpBuffer);

例:

    CString myString("Hi");
    LPTSTR  lpBuffer = myString.GetBuffer(myString.GetLength());

    CWnd* cw= GetDlgItem(IDC_LIST1);
    ::SendMessage(cw->GetSafeHwnd(), LB_INSERTSTRING, 0, (LPARAM)lpBuffer);
    myString.ReleaseBuffer ( );
于 2012-07-11T11:30:54.867 に答える