Страница: 1 | 2 |
Создаю листвбю таким способом: mWnd = CreateWindowEx(0, "SysListView32", "LVControl", WS_VISIBLE Or WS_CHILD, 0, 0, 50, 100, Me.hwnd, ByVal 0&, ByVal 0&, ByVal 0&) А как к нему потом обращаться, например чтобы добавить Headers или еще чего нибудь с ним сделать, например:
Ну, если ты хочешь просто подвинуть этот контрол, то ты должен использовать Функцию SetWindowPos, например: SetWindowPos mWnd, 0, 0, 0, 0, 0, SWP_NOZORDER Or SWP_NOSIZE А если ты хочешь обрабатываеть события, то воспользуйся функцией модификации окна (SetWindowLong). ЗЫ: Когда я на чистом API создавал окно, а потом приляпал на него кнопку, то эта прога никогда не запускалась с первого раза, вылетала и всё тут Общаться со вновь созданным окном ты сможешь только через hWnd, для назначения окну оконной процедуры используй SetWindowLong с параметром GWL_WNDPROC. А из VB получается никак нельзя? Ну смотри, у тебя есть хэндл твоего окна (mWnd) следовательно ты можешь использовать все API функции по манипуляции над окнами. Чтобы сменить позицю используй SetWindowPos, чтобы сменить надпись используй SetWindowText. Ты создал не контрол, ты создал ОКНО. Вот и используй функции для работы с окнами. Когда я поставил Делфи 6.0, то там увидел кучу хэлпов, среди которых увидел и справочник по программированию в Win32 API. Оттуда я черпаю практически всё. 2KAM: Delphi снеси, справочник оставь А я так и сделал Хотел Делфи учить, поучил-поучил и бросил... Я к VB привык... Я тоже помню хотел сделать ListView на API. Но потом обламался. Хотелось бы конечно самому сделать, но обломно. У меня есть начало примера, создающего ЛВ и пару стобцов. Могу выслать. VB сейчас не установлен, а копий примера в разных стадиях разработки несколько. По этому не уверен в работоспособности. Хотя может и пашет. CyRax, закинь,а ?
Вопрос: CreateWindowEx
Добавлено: 11.01.04 14:20
Автор вопроса: cresta
LVControl.Move 50,50 вызывает ошибку: переменная блока не установлена. Пробовал определить LVControl как объект или как контрол - ничего не дает. Может кто знает, как к нему надо обращаться?
Ответы
Всего ответов: 19
Номер ответа: 1
Автор ответа:
KAM
ICQ: 190197618
Вопросов: 25
Ответов: 97
Профиль | | #1
Добавлено: 11.01.04 14:32
Номер ответа: 2
Автор ответа:
Sharp
Лидер форума
ICQ: 216865379
Вопросов: 106
Ответов: 9979
Web-сайт:
Профиль | | #2
Добавлено: 11.01.04 15:32
Номер ответа: 3
Автор ответа:
cresta
Вопросов: 117
Ответов: 1538
Профиль | | #3
Добавлено: 11.01.04 15:56
Номер ответа: 4
Автор ответа:
Sharp
Лидер форума
ICQ: 216865379
Вопросов: 106
Ответов: 9979
Web-сайт:
Профиль | | #4
Добавлено: 11.01.04 16:00
А по хандлу разве не из VB?
Номер ответа: 5
Автор ответа:
KAM
ICQ: 190197618
Вопросов: 25
Ответов: 97
Профиль | | #5
Добавлено: 11.01.04 16:05
Номер ответа: 6
Автор ответа:
cresta
Вопросов: 117
Ответов: 1538
Профиль | | #6
Добавлено: 11.01.04 16:25
А можно какой-нибудь пример, ну допустим, как добавлять ColumnHeaders или ListItem? Как мне определить эти стили окна, ведь SetWindowLong нужно указать стиль, если я правильно понял
Номер ответа: 7
Автор ответа:
Sharp
Лидер форума
ICQ: 216865379
Вопросов: 106
Ответов: 9979
Web-сайт:
Профиль | | #7
Добавлено: 11.01.04 16:33
Это делается не стилями, это делается ссобщениями. Качаешь справочник по сообщениям Windows и смотришь из них те, что начинаются на LV_
Номер ответа: 8
Автор ответа:
cresta
Вопросов: 117
Ответов: 1538
Профиль | | #8
Добавлено: 11.01.04 16:37
А в MSDN нет этого? Там я видел LVM_, это не то?
Номер ответа: 9
Автор ответа:
Sharp
Лидер форума
ICQ: 216865379
Вопросов: 106
Ответов: 9979
Web-сайт:
Профиль | | #9
Добавлено: 11.01.04 16:42
Думаю, что почти все, что начинается с LV, имеет какое-то отношение к ListView
Номер ответа: 10
Автор ответа:
cresta
Вопросов: 117
Ответов: 1538
Профиль | | #10
Добавлено: 11.01.04 17:01
А где можнл скачать справочник по стилямWindows
Номер ответа: 11
Автор ответа:
KAM
ICQ: 190197618
Вопросов: 25
Ответов: 97
Профиль | | #11
Добавлено: 11.01.04 17:28
Номер ответа: 12
Автор ответа:
Sharp
Лидер форума
ICQ: 216865379
Вопросов: 106
Ответов: 9979
Web-сайт:
Профиль | | #12
Добавлено: 11.01.04 18:36
Номер ответа: 13
Автор ответа:
KAM
ICQ: 190197618
Вопросов: 25
Ответов: 97
Профиль | | #13
Добавлено: 11.01.04 19:03
Номер ответа: 14
Автор ответа:
CyRax
Разработчик Offline Client
ICQ: 204447456
Вопросов: 180
Ответов: 4229
Web-сайт:
Профиль | | #14
Добавлено: 12.01.04 02:05
Номер ответа: 15
Автор ответа:
sne
Разработчик Offline Client
ICQ: 233286456
Вопросов: 34
Ответов: 5445
Web-сайт:
Профиль | | #15
Добавлено: 12.01.04 02:33
sne_pro@mail.ru