![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Заполнение ComboBox'а на WinApi [D5, Win95/98, WinME, NT4, Win2k, WinXP]
lexus3d © (2004-07-15 09:29:00)Люди.... человеки...помогите... combobox создать создал.. а вот как его заполнить без понятия...и он же потом должон возвращать чё то, типа что я там выбрал из списка чего то, т.е. индекс вродь как... заранее благо...дрю! :)
lexus3d (2004-07-15 13:41:00) [1]ОООООО!!!!!! работает ... большое спасибо!!!
AD_infiniTUM (2004-07-15 13:24:00) [2]
> если у меня не строка .... а массив строк? тогда как?
Циклом.
> как создаётся ?! а вот так:
> cmb:=CreateWindowEx(0,'combobox','',CBS_DROPDOWNLIST or
> WS_VISIBLE or WS_CHILD or WS_TABSTOP,10,40,250,25,wnd,0,hInstance,nil);
Попробуй заменить на
cmb:=CreateWindowEx(0,'combobox','',CBS_DROPDOWNLIST or WS_VISIBLE or WS_CHILD or WS_TABSTOP,10,40,250,200,wnd,0,hInstance,nil);
lexus3d (2004-07-15 12:41:00) [3]как создаётся ?! а вот так:
cmb:=CreateWindowEx(0,'combobox','',CBS_DROPDOWNLIST or WS_VISIBLE or WS_CHILD or WS_TABSTOP,10,40,250,25,wnd,0,hInstance,nil);
lexus3d (2004-07-15 12:40:00) [4]а если у меня не строка .... а массив строк? тогда как?
AD_infiniTUM (2004-07-15 12:39:00) [5]Вообще, если я правильно понимаю, передается не строка, а указатель на первый символ строки. Но добавится потом вся строка. У меня все работает, выдрал из рабочей программы. А как создается ComboBox?
AD_infiniTUM (2004-07-15 12:30:00) [6]Передается вся срока.
lexus3d (2004-07-15 12:27:00) [7]>>SendMessage(CBWnd, CB_ADDSTRING, 0, Integer(PChar(@S[1])));
немного не понял почему @S[1], ведь S[1]- это символ от строки S так туда чёль символ тока передаётся?
AD_infiniTUM (2004-07-15 12:20:00) [8]Кстати, тут ошибка небольшая вкралась, должно быть
SendMessage(CBWnd, CB_ADDSTRING, 0, Integer(PChar(@S[1])));
lexus3d (2004-07-15 11:34:00) [9]о! спасибо!... тогда можно сразу встречный вопрос... почему не отображаются строки которые были занесены?... ну т.е. он не работает как простой combobox... нет выпадающего списка!
AD_infiniTUM (2004-07-15 09:58:00) [10]Добавление строки
var
S: string;
...
S = '123';
SendMessage(CBWnd, CB_ADDSTRING, 0, Integer(PChar(@S])));
Получение номера выбранного элемента
var
I: Integer;
...
I := SendMessage(CBWnd, CB_GETCURSEL, 0, 0);
CBWnd - Handle ComboBox'а