cbSize = SizeOf (архиваторный); wcx.style = CS_HREDRAW | CS_VREDRAW; wcx.lpfnWndProc = MainWndProc; wcx.cbClsExtra = 0; wcx.cbWndExtra = 0; wcx.hInstance = HINSTANCE; wcx.hIcon = NULL; wcx.hCursor = LoadCursor (NULL, IDC_ARROW); wcx.hbrBackground = (HBRUSH) (COLOR_BACKGROUND + 1); wcx.lpszMenuName = NULL; wcx.lpszClassName = "MainWClass"; wcx.
hIconSm = NULL; RegisterClassEx (& архиваторный); HWND hwndMain; hwndMain = CreateWindowEx (0, "MainWClass", "Главное окно", WS_OVERLAPPEDWINDOW, CW_USEDEFAULT, CW_USEDEFAULT, CW_USEDEFAULT, CW_USEDEFAULT, NULL, NULL, HINSTANCE, NULL); если (hwndMain!) вернуться ложным; ShowWindow (hwndMain, SW_SHOW); UpdateWindow (hwndMain); строительства символ * str1 = "первая строка."; строительства символ * str2 = "вторая строка."; строительства символ * str3 = "третий строка."; строительства символ * Str4 = "четвертый строка."; строительства символ * STR5 = "пятая строка.
"; HWND hwndLst; hwndLst = CreateWindowEx (0, "списке", NULL, WS_CHILD, 100, 100, 100, 150, hwndMain, (HMENU) 1, HINSTANCE, NULL); ShowWindow (hwndLst, SW_SHOW); UpdateWindow (hwndLst); SendMessage (hwndLst, LB_ADDSTRING, NULL, (LPARAM) str1); SendMessage (hwndLst, LB_ADDSTRING, NULL, (LPARAM) str2); SendMessage (hwndLst, LB_ADDSTRING, NULL, (LPARAM) str3); SendMessage (hwndLst, LB_ADDSTRING, NULL, (LPARAM) Str4); SendMessage (hwndLst, LB_ADDSTRING, NULL, (LPARAM) STR5); MSG MSG; BOOL Брет; в то время как ((Bret = GetMessage (& MSG, hwndMain, 0, 0)) = 0) {если (Bret == -1) {//обработать ошибку и, возможно, выйти из приложения} еще {TranslateMessage (& MSG); DispatchMessage (& MSG); }} Вернуться msg.
wParam; } Вы можете использовать следующую команду в командной строке, чтобы скомпилировать код: G ++ winlst.cpp -mwindows -o winlst.exe Список ящик, созданный выше кода является одним выбор окно списка. Вы не можете иметь более чем один пункт, выбранный (выделенный). Вы можете добавить полосы прокрутки,