我想設置一個組合框,以便用戶可以從下拉菜單中選擇一個選項,然後檢索用戶使用Win32 API C++編程選擇的內容,而不是MFC。我讀了約翰的帖子here,我什麼都不能工作。我可以設置組合框的文本,但我無法檢索用戶選擇的內容。以下是我已經嘗試了一些方法:獲取組合框的文本Win32 API C++(NO MFC)
LPTSTR buf;
ComboBox_GetText(hwnd, buf, 9);
MessageBox(NULL, buf, NULL, MB_OK);
而且
char* buf;
GetDlgItemText(hwnd, IDC_COMBO1, buf, 9);
MessageBox(NULL, buf, NULL, MB_OK);
IDC_COMBO1
是組合框的ID和hwnd
是當前對話框的HWND。 我與組合框對話框的代碼是:
LANGUAGE LANG_NEUTRAL, SUBLANG_NEUTRAL IDD_DIALOG4 DIALOG 0, 0, 424, 181 STYLE DS_3DLOOK | DS_CENTER | DS_MODALFRAME | DS_SHELLFONT | WS_CAPTION | WS_VISIBLE | WS_POPUP | WS_SYSMENU CAPTION "Dialog" FONT 8, "Ms Shell Dlg" { COMBOBOX IDC_COMBO1, 113, 31, 119, 19, CBS_DROPDOWN | CBS_HASSTRINGS PUSHBUTTON "Button1", IDC_BUTTON1, 188, 112, 50, 14 }
我使用一個資源文件來做到這一點。提前致謝。
它以什麼方式「不起作用」?它如何失敗?什麼是錯誤代碼? –
它沒有給我任何數據。我沒有收到任何錯誤代碼,它編譯正確,它只是在我調用消息框時不會返回文本框中的數據。 – llk