|
|
| Посл.отвђт | Сообщенiе |
|
|
Дата: Авг 1, 2004 20:05:58 Нужно добавить пару строк в пустой ComboBox. Что делаю я. invoke SendMessage,hComboBox,CB_ADDSTRING,0,offset строка Элементы как бы добавляются но их невидно. Надо вероятно обновить box, но я не знаю как. Вернее UpdateWindow не помогает. Вообщем ламерский вопрос, но начинать с чего-то надо. |
|
|
Дата: Авг 1, 2004 20:14:13 В нормальной ситуации не надо делать обновление - бокс обновляется при добавлении каждой строки. Проверь, что в EAX после этого вызова. Должны быть значения с нуля и далее, но не отрицательные. Или вызови GetLastError() сразу после SendMessage(). |
|
|
Дата: Авг 1, 2004 20:16:11 Скорей всего, высота ComboBox'a маленькая. Она должна быть равна ComboBox'у с выпавшим списком. |
|
|
Дата: Авг 1, 2004 20:53:19 Ошибки при вызове SendMessage не возникает, все корректно добавляется. 2 __Ranger Ты прав, высота действительно оказалась маленькой, потому что когда я нажимаю чтобы выпал список элементов, выпадает маленькая черная полоска, а если по ней аккуратно нажать, то выбираться какой-нибудь элемент и я его вижу. Значит дело действительно в высоте, но я высоту меняю, ничего не меняется, надо, наверное, какие-то свойства поменять/добавить. Но правда, я не в курсе какие :-( |
|
|
Дата: Авг 1, 2004 20:58:54 Так, свойства я успешно подобрал. Всем ответившим большое спасибо! |
|
|
Дата: Авг 1, 2004 21:20:47 С этим все ясно. Встает сразу другой вопрос. У меня в списке 48 элементов. Пользователь выбирает элемент, далее мне нужно его сразу сохранить в отдельную переменную. Я понимаю это так: по wm_command определяем наш Combo Box, далее следует возможно проверка на CBN_SELCHANGE, а что нужно далее я даже не представляю. Короче нужно определить номер выбранного элемента в списке, а далее сам элемент. |
|
|
Дата: Авг 1, 2004 23:18:29 CB_GETCURSEL+CB_GETLBTEXT |
|
|
Дата: Авг 1, 2004 23:40:28 Есть такое дело :-) |