· Начало · Статистика · WASM.RU · Noir.Ru ·

 WASM Phorum (Оффлайн - 24.11.2003) —› WASM.WIN32 —› SysHeader32

Посл.отвђт Сообщенiе


Дата: Сен 1, 2003 16:34:53

Правым кликом по заголовку ListView я вывожу popup с выбором столбцов. Как ни пытался, не могу найти хорошего сообщения, которое мог бы обрабатывать для этого. Взял WM_NOTIFY с пустым ID и кодом NM_RCLICK в NMHDR, но такое же шлет и статусбар. Стал следить за Эксплорером Spyxx-ом - ничего не нашел. Пожалуйста, помогите, может как-то можно узнать хэндл Header'а, не считать же пиксели поверх клиентской области ListView!
Заранее признателен


Дата: Сен 1, 2003 19:01:04

Взял WM_NOTIFY с пустым ID и кодом NM_RCLICK в NMHDR, но такое же шлет и статусбар
Зато у статусбара другой hwnd!
; On WM_NOTIFY
; ============
 mov ecx,lParam           ; Get pointer to NMHDR
 mov eax,(NMHDR PTR [ecx]).hwndFrom
 .IF eax == hTree
  mov eax,(NMHDR PTR [ecx]).code
  .IF eax == NM_RCLICK
   ; Ага! Попался, подлый rclick!
  .ENDIF
 .ENDIF
 mov eax,1
 ret
hTree, естественно, нужно предварительно получить. Если ваше главное окно - диалог, можете вызвать GetDialogItem в WM_INITDIALOG.


Дата: Сен 1, 2003 20:42:42

Спасибо, я забыл, что статусбаров хэндл знаю... Теперь остается только надеяться, что у меня больше нет окон с нулевым id, посылающих WM_NOTIFY


Дата: Сен 3, 2003 14:47:25

Пожалуйста, помогите, может как-то можно узнать хэндл Header'а
LVM_GETHEADER
Как ни пытался, не могу найти хорошего сообщения, которое мог бы обрабатывать для этого
header subclassing + WM_RBUTTONDOWN


Дата: Сен 3, 2003 18:13:24 · Поправил: Valery

Супер! В моем пособии по API для 95/NT 3.5 такого сообщения нет. Покупаю MSDN! Всем спасибо, тема закрыта.

Эта тема закрыта. Отвђты больше не принимаются.


Powered by miniBB 1.6 © 2001-2002
Время загрузки страницы (сек.): 0.069