Просто ComboBox
В WM_INITDIALOG прописываю строку:
SendMessage( GetDlgItem(hDlg, IDC_COMBO), CB_ADDSTRING, 0, IDS_STRING1 );
(IDS_STRING1 -- ресурс, содержит строку для вставки в ComboBox).
Результат: ошибки не выдает и список ComboBox пуст. Че за... ботва? Может необходимо вызвать что-то типа REDRAW? (в msdn ничего не нашел, даже примеров).
SendMessage( GetDlgItem(hDlg, IDC_COMBO), CB_ADDSTRING, 0, IDS_STRING1 );
(IDS_STRING1 -- ресурс, содержит строку для вставки в ComboBox).
нет всё непрально!
если у тя строка в ресурсе её надо сначала загрузить а патом уж дабавлять:
char sz[MANY];
LoadString(g_hInstance, IDS_STRING1, sz, sizeof(sz));
SendMessage( GetDlgItem(hDlg, IDC_COMBO), CB_ADDSTRING, 0, sz );
редраф не нужен.
нет всё непрально!
если у тя строка в ресурсе её надо сначала загрузить а патом уж дабавлять:
char sz[MANY];
LoadString(g_hInstance, IDS_STRING1, sz, sizeof(sz));
SendMessage( GetDlgItem(hDlg, IDC_COMBO), CB_ADDSTRING, 0, sz );
редраф не нужен.
Неее, такой вариант выдает ошибку ещё при компиляции:
char buff[100] = "Trapezoid";
SendMessage( GetDlgItem(hDlg, IDC_COMBO), CB_ADDSTRING, 0, buff );
-- и, говорит, что не может преобразовать четвертый параметр (buff) from char[] to long (!long!).
Неее, такой вариант выдает ошибку ещё при компиляции:
char buff[100] = "Trapezoid";
SendMessage( GetDlgItem(hDlg, IDC_COMBO), CB_ADDSTRING, 0, buff );
-- и, говорит, что не может преобразовать четвертый параметр (buff) from char[] to long (!long!).
фсё нармально у SendMessage паследний параметр действительно (пока) long, но лучше его назавём LPARAM и штоб фсё было пучком нада писать так:
SendMessage( GetDlgItem(hDlg, IDC_COMBO), CB_ADDSTRING, 0, (LPARAM)buff );
Не мог бы ты посмотреть сам? Прога ещё небольшая, а уже столько вожусь с ней.
Мне кажется я, что-то упустил из виду при настройке самого диалога.
why so dificult, make easy ,take member variable and use function AdString.
Hi,
why so dificult, make easy ,take member variable and use function AdString.
he using pure WinAPI, not MFC library.
Случайно обнаружил (потрыкав с клавиатуры вверх-вниз на комбобоксе), что строки на самом деле добавляются, просто список доступных строчек не открывается как у комбобоксов заведено. В этом проблема :).
:) Привет всем!
Случайно обнаружил (потрыкав с клавиатуры вверх-вниз на комбобоксе), что строки на самом деле добавляются, просто список доступных строчек не открывается как у комбобоксов заведено. В этом проблема :).
если создал этот combobox в редакторе диалогов, но прямо в редакторе нажми на стрелку комбобокса будто хочешь его открыть, увидишь что появились контуры "открывшегося" комбобокса, вытяни их вниз.
если создавал этот комбобокс "на лету" при помощи CreateWindow, то в нараметр высота передай высоту открытого комбобокса, высоту закрытого Windows знают сами.
ААААГРОМАДНЕЙШЕЕ ТЕБЕ СПАСИБО!!!!!!
Я бы низачто не догадался -- так эта возможность в вижуал студио замаскирована.
Спасибо :)
Игорь!
ААААГРОМАДНЕЙШЕЕ ТЕБЕ СПАСИБО!!!!!!
Я бы низачто не догадался -- так эта возможность в вижуал студио замаскирована.
Спасибо :)
:) да незачта, всихда пажалуста! :D