ComboBox проблема...
От: nix  
Дата: 24.03.03 05:37
Оценка:
Наверное глупый вопрос, но никак не могу разобраться с этим ComboBox'ом
Кидаю на диалог этот самый ComboBox, в свойствах в парметр Data пишу: "AA; aa; BB; bb" (без ковычек), нажимаю TEST, ComboBox работает нормально. Компилирую, запускаю — ComboBox не разворачивается((
WinXP, Visual C++ .NET (пишу только на WinApi)
Re: ComboBox проблема...
От: Odi$$ey Россия http://malgarr.blogspot.com/
Дата: 24.03.03 05:53
Оценка:
Здравствуйте, nix, Вы писали:

nix>Наверное глупый вопрос, но никак не могу разобраться с этим ComboBox'ом

nix>Кидаю на диалог этот самый ComboBox, в свойствах в парметр Data пишу: "AA; aa; BB; bb" (без ковычек), нажимаю TEST, ComboBox работает нормально. Компилирую, запускаю — ComboBox не разворачивается((

в редакторе ресурсов задать размер комбобокса в развернутом состоянии ?
Давай, бабка, из топора кашу сварим. (Раскольников)
Re[2]: ComboBox проблема...
От: Аноним  
Дата: 24.03.03 06:39
Оценка:
Здравствуйте, Odi$$ey, Вы писали:

OE>Здравствуйте, nix, Вы писали:


nix>>Наверное глупый вопрос, но никак не могу разобраться с этим ComboBox'ом

nix>>Кидаю на диалог этот самый ComboBox, в свойствах в парметр Data пишу: "AA; aa; BB; bb" (без ковычек), нажимаю TEST, ComboBox работает нормально. Компилирую, запускаю — ComboBox не разворачивается((

OE>в редакторе ресурсов задать размер комбобокса в развернутом состоянии ?


Размер задал, все равно ничего не получается
Re[3]: ComboBox проблема...
От: Muchacho США  
Дата: 24.03.03 06:55
Оценка:
Здравствуйте, Аноним, Вы писали:

А>Размер задал, все равно ничего не получается

Видимо как-то неправильно задал.Опиши подробнее как меняешь размер ComboBox
Re[4]: ComboBox проблема...
От: Аноним  
Дата: 24.03.03 12:33
Оценка:
Здравствуйте, Muchacho, Вы писали:

M>Здравствуйте, Аноним, Вы писали:


А>>Размер задал, все равно ничего не получается

M>Видимо как-то неправильно задал.Опиши подробнее как меняешь размер ComboBox
Разобрался!!!
В ресурсы был включен манифест. Удалил его и все стало нормально
Но как сделать так, что бы приподключеном манифесте работал ComboBox???
Re[5]: ComboBox проблема...
От: Аноним  
Дата: 24.03.03 12:39
Оценка:
Еще вопросик: как добовлять текст в ComboBox динамически (из программы)?
В MSND нашел только про то, как менять текст в ресурсах
Re[6]: ComboBox проблема...
От: IvEv  
Дата: 24.03.03 12:45
Оценка:
Здравствуйте, Аноним, Вы писали:

А>Еще вопросик: как добовлять текст в ComboBox динамически (из программы)?

А>В MSND нашел только про то, как менять текст в ресурсах

::SendMessage(m_hWnd, CB_ADDSTRING, 0, (LPARAM)lpszString);
m_hWnd — хендл ComboBox'a
lpszString — добавляемая строка
Один из самых обычных и ведущих к самым большим бедствиям соблазнов есть соблазн словами: "Все так делают".
Лев Толстой
Re[6]: ComboBox проблема...
От: Muchacho США  
Дата: 24.03.03 12:45
Оценка:
Здравствуйте, Аноним, Вы писали:

А>Еще вопросик: как добовлять текст в ComboBox динамически (из программы)?

А>В MSND нашел только про то, как менять текст в ресурсах

Посмотреть исходники CComboBox::AddString и CComboBox::InsertString
Re[6]: ComboBox проблема...
От: VertexDev Россия  
Дата: 24.03.03 13:41
Оценка:
Здравствуйте, <Аноним>, Вы писали:

А>Еще вопросик: как добовлять текст в ComboBox динамически (из программы)?

А>В MSND нашел только про то, как менять текст в ресурсах

Очень просто: если КомбоБокс у тебя на диалоге то пиши код
SendDlgItemMessage(HWND окна, Индентификатор Бокса, Команду (в данном случае CB_ADDSTRING), сюдо 0, Текст для добавления);
Пример:
SendDlgItemMessage(hDlg,IDC_COMBOBOX,CB_ADDSTRING,0,(LONG)"Я Супер Программист");
... << RSDN@Home 1.0 beta 6a >>
Re: ComboBox проблема...
От: Шпизель Россия  
Дата: 25.03.03 04:49
Оценка: -2
Короче говоря то что напишу я здесь — будет тебе уроком .
Забудь что писали тебе все ...
и послушай меня ...
к делу.
добавляем к исходному коду
#include <windowsx.h>

внутри есть ф-ции нужные для тебя
/****** ComboBox control message APIs ****************************************/

#define ComboBox_Enable(hwndCtl, fEnable)       EnableWindow((hwndCtl), (fEnable))

#define ComboBox_GetText(hwndCtl, lpch, cchMax) GetWindowText((hwndCtl), (lpch), (cchMax))
#define ComboBox_GetTextLength(hwndCtl)         GetWindowTextLength(hwndCtl)
#define ComboBox_SetText(hwndCtl, lpsz)         SetWindowText((hwndCtl), (lpsz))

#define ComboBox_LimitText(hwndCtl, cchLimit)   ((int)(DWORD)SNDMSG((hwndCtl), CB_LIMITTEXT, (WPARAM)(int)(cchLimit), 0L))

#define ComboBox_GetEditSel(hwndCtl)            ((DWORD)SNDMSG((hwndCtl), CB_GETEDITSEL, 0L, 0L))
#define ComboBox_SetEditSel(hwndCtl, ichStart, ichEnd) ((int)(DWORD)SNDMSG((hwndCtl), CB_SETEDITSEL, 0L, MAKELPARAM((ichStart), (ichEnd))))

#define ComboBox_GetCount(hwndCtl)              ((int)(DWORD)SNDMSG((hwndCtl), CB_GETCOUNT, 0L, 0L))
#define ComboBox_ResetContent(hwndCtl)          ((int)(DWORD)SNDMSG((hwndCtl), CB_RESETCONTENT, 0L, 0L))

#define ComboBox_AddString(hwndCtl, lpsz)       ((int)(DWORD)SNDMSG((hwndCtl), CB_ADDSTRING, 0L, (LPARAM)(LPCTSTR)(lpsz)))
#define ComboBox_InsertString(hwndCtl, index, lpsz) ((int)(DWORD)SNDMSG((hwndCtl), CB_INSERTSTRING, (WPARAM)(int)(index), (LPARAM)(LPCTSTR)(lpsz)))

#define ComboBox_AddItemData(hwndCtl, data)     ((int)(DWORD)SNDMSG((hwndCtl), CB_ADDSTRING, 0L, (LPARAM)(data)))
#define ComboBox_InsertItemData(hwndCtl, index, data) ((int)(DWORD)SNDMSG((hwndCtl), CB_INSERTSTRING, (WPARAM)(int)(index), (LPARAM)(data)))

#define ComboBox_DeleteString(hwndCtl, index)   ((int)(DWORD)SNDMSG((hwndCtl), CB_DELETESTRING, (WPARAM)(int)(index), 0L))

#define ComboBox_GetLBTextLen(hwndCtl, index)           ((int)(DWORD)SNDMSG((hwndCtl), CB_GETLBTEXTLEN, (WPARAM)(int)(index), 0L))
#define ComboBox_GetLBText(hwndCtl, index, lpszBuffer)  ((int)(DWORD)SNDMSG((hwndCtl), CB_GETLBTEXT, (WPARAM)(int)(index), (LPARAM)(LPCTSTR)(lpszBuffer)))

#define ComboBox_GetItemData(hwndCtl, index)        ((LRESULT)(DWORD)SNDMSG((hwndCtl), CB_GETITEMDATA, (WPARAM)(int)(index), 0L))
#define ComboBox_SetItemData(hwndCtl, index, data)  ((int)(DWORD)SNDMSG((hwndCtl), CB_SETITEMDATA, (WPARAM)(int)(index), (LPARAM)(data)))

#define ComboBox_FindString(hwndCtl, indexStart, lpszFind)  ((int)(DWORD)SNDMSG((hwndCtl), CB_FINDSTRING, (WPARAM)(int)(indexStart), (LPARAM)(LPCTSTR)(lpszFind)))
#define ComboBox_FindItemData(hwndCtl, indexStart, data)    ((int)(DWORD)SNDMSG((hwndCtl), CB_FINDSTRING, (WPARAM)(int)(indexStart), (LPARAM)(data)))

#define ComboBox_GetCurSel(hwndCtl)                 ((int)(DWORD)SNDMSG((hwndCtl), CB_GETCURSEL, 0L, 0L))
#define ComboBox_SetCurSel(hwndCtl, index)          ((int)(DWORD)SNDMSG((hwndCtl), CB_SETCURSEL, (WPARAM)(int)(index), 0L))

#define ComboBox_SelectString(hwndCtl, indexStart, lpszSelect)  ((int)(DWORD)SNDMSG((hwndCtl), CB_SELECTSTRING, (WPARAM)(int)(indexStart), (LPARAM)(LPCTSTR)(lpszSelect)))
#define ComboBox_SelectItemData(hwndCtl, indexStart, data)      ((int)(DWORD)SNDMSG((hwndCtl), CB_SELECTSTRING, (WPARAM)(int)(indexStart), (LPARAM)(data)))

#define ComboBox_Dir(hwndCtl, attrs, lpszFileSpec)  ((int)(DWORD)SNDMSG((hwndCtl), CB_DIR, (WPARAM)(UINT)(attrs), (LPARAM)(LPCTSTR)(lpszFileSpec)))

#define ComboBox_ShowDropdown(hwndCtl, fShow)       ((BOOL)(DWORD)SNDMSG((hwndCtl), CB_SHOWDROPDOWN, (WPARAM)(BOOL)(fShow), 0L))

#if (WINVER >= 0x030a)
#define ComboBox_FindStringExact(hwndCtl, indexStart, lpszFind)  ((int)(DWORD)SNDMSG((hwndCtl), CB_FINDSTRINGEXACT, (WPARAM)(int)(indexStart), (LPARAM)(LPCTSTR)(lpszFind)))

#define ComboBox_GetDroppedState(hwndCtl)           ((BOOL)(DWORD)SNDMSG((hwndCtl), CB_GETDROPPEDSTATE, 0L, 0L))
#define ComboBox_GetDroppedControlRect(hwndCtl, lprc) ((void)SNDMSG((hwndCtl), CB_GETDROPPEDCONTROLRECT, 0L, (LPARAM)(RECT *)(lprc)))

#define ComboBox_GetItemHeight(hwndCtl)             ((int)(DWORD)SNDMSG((hwndCtl), CB_GETITEMHEIGHT, 0L, 0L))
#define ComboBox_SetItemHeight(hwndCtl, index, cyItem) ((int)(DWORD)SNDMSG((hwndCtl), CB_SETITEMHEIGHT, (WPARAM)(int)(index), (LPARAM)(int)cyItem))

#define ComboBox_GetExtendedUI(hwndCtl)             ((UINT)(DWORD)SNDMSG((hwndCtl), CB_GETEXTENDEDUI, 0L, 0L))
#define ComboBox_SetExtendedUI(hwndCtl, flags)      ((int)(DWORD)SNDMSG((hwndCtl), CB_SETEXTENDEDUI, (WPARAM)(UINT)(flags), 0L))


ты там добавить чтото хотел ComboBox_AddString(GetDlgItem(hDlg,IDC_YOURCOMBO),"Ля ля ля — текст"); и всё будет хОрОшО

Удачи
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.