Наши проекты:
Журнал · Discuz!ML · Wiki · DRKB · Помощь проекту |
||
ПРАВИЛА | FAQ | Помощь | Поиск | Участники | Календарь | Избранное | RSS |
[18.222.69.152] |
|
Сообщ.
#1
,
|
|
|
как сделать всплывающее меню для стандартных классов ("edit", "button"... )
|
Сообщ.
#2
,
|
|
|
Дык CreatePopupMenu()
добавляешь все пункты, потом ловишь WM_RBUTTONDOWN на контроле и делаешь TrackPopupMenu() |
Сообщ.
#3
,
|
|
|
А где и как :o ловить WM_RBUTTONDOWN ведь функция обработки событий мне ???не доступна?
|
Сообщ.
#4
,
|
|
|
С чего вдруг ?
|
Сообщ.
#5
,
|
|
|
Ну это ж стандартный класс и него есть стандартнай функия обработки сообщений и в нее нельзя влезть
|
Сообщ.
#6
,
|
|
|
Слушай, а при чём тут классы? Мы ж в WinAPI разговариваем ?
|
Сообщ.
#7
,
|
|
|
имя класса который передается в CreateWindow
|
Сообщ.
#8
,
|
|
|
Ты же можешь создать кнопку со стандартным классом. Но назначить ей свою WndProc. И в этой функции обрабатывать все что тебе нужно. А если не нужно то вызывать стандартную функцию кнопки.
|
Сообщ.
#9
,
|
|
|
А разве все WM_ ко всем объектам не через главное окно проходят. По-моему можно ловить в основном обработчике.
|
Сообщ.
#10
,
|
|
|
все эти классы:
BUTTON EDIT и т.д. являются унаследованными(дочерними) от базового оконного класса, т.е. все что хорошо для окна хорошо и для всех этих элементов управления (ну почти все) |
Сообщ.
#11
,
|
|
|
Кстати, сообщение WM_CONTEXTMENU приходит окну даже если клик был на контроле.
|
Сообщ.
#12
,
|
|
|
Но едита я б все-таки переназначил процесс едита и ловил бы правое нажатие батона!
|