Как поймать меняющийся курсор над столбцами listview?

Программирование на Visual Basic, главный форум. Обсуждение тем программирования на VB 1—6.
Даже если вы плохо разбираетесь в VB и программировании вообще — тут вам помогут. В разумных пределах, конечно.
Правила форума
Темы, в которых будет сначала написано «что нужно сделать», а затем просьба «помогите», будут закрыты.
Читайте требования к создаваемым темам.
Pantalone
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 687
Зарегистрирован: 12.11.2005 (Сб) 16:46
Откуда: Сапог

Как поймать меняющийся курсор над столбцами listview?

Сообщение Pantalone » 17.11.2006 (Пт) 9:25

Когда в listview двигаешь размер столбцов, то курсор при этом меняется на стрелочки. Как бы отловить момент когда курсор меняется?
Попробовал сабклассингом заголовка listview ловить WM_SETCURSOR, вроде ловится. Но как определить что он становится стрелочками и при этом знать еще у какого именно стобца это происходит?
Можно засабклассить listview и определять у какого столбца происходит клик с этими стрелочками, но в моем случае клика нет.

SergT
Бывалый
Бывалый
Аватара пользователя
 
Сообщения: 237
Зарегистрирован: 22.06.2005 (Ср) 21:50
Откуда: Москва

Сообщение SergT » 17.11.2006 (Пт) 10:10

Под рукой ничего нет, но по моему курсор поменялся при событии (что то типа CollumnResize или HeaderResize). Однако, заметь - эти события относятся именно к заголовку.
Л. Толстой, «зачем обдумывать обдуманное, бери готовое и иди дальше, в этом сила человечества»
"Всё в наших руках, поэтому их нельзя опускать" (Коко Шанель)

Pantalone
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 687
Зарегистрирован: 12.11.2005 (Сб) 16:46
Откуда: Сапог

Сообщение Pantalone » 17.11.2006 (Пт) 10:18

SergT
Да там есть что-то такое, но оно работает только через HDM_HITTEST, а мне просто нужно предотвратить смену курсора без самого клика.

SergT
Бывалый
Бывалый
Аватара пользователя
 
Сообщения: 237
Зарегистрирован: 22.06.2005 (Ср) 21:50
Откуда: Москва

Re: Как поймать меняющийся курсор над столбцами listview?

Сообщение SergT » 17.11.2006 (Пт) 10:24

Pantalone писал(а):Когда в listview двигаешь размер столбцов...

А ты хочешь до того как двигаешь? Если я правильно понял, ты хочешь не показывать, что можно изменить размер определенной колонки?
Я давно отказался от listview. Использую VS7L для подобных ситуаций. Там большое кол-во событий Before... Очень рекомендую. И насчет мыши там есть MouseCol и MouseRow - всегда можно определить над какой ячейкой находится курсор. В общем VS7 может все, что listview. Но еще кое что более, да и заполнять его данными проще (если работал с MS FlexGrid - все покажется знакомым) :wink:
Л. Толстой, «зачем обдумывать обдуманное, бери готовое и иди дальше, в этом сила человечества»
"Всё в наших руках, поэтому их нельзя опускать" (Коко Шанель)

Pantalone
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 687
Зарегистрирован: 12.11.2005 (Сб) 16:46
Откуда: Сапог

Сообщение Pantalone » 17.11.2006 (Пт) 10:47

SergT
Что за VS7L? Платный контрол?
Но пока мне бы с listview разобраться, проект переделывать полгода придется если его убрать.

А ты хочешь до того как двигаешь? Если я правильно понял, ты хочешь не показывать, что можно изменить размер определенной колонки?
Именно так.

Kovu
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 924
Зарегистрирован: 29.04.2005 (Пт) 17:38

Сообщение Kovu » 17.11.2006 (Пт) 11:09

Ну можно просто обнулить WM_SETCURSOR =)
Если всё делать своими ручками, они скоро отвалятся !

Pantalone
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 687
Зарегистрирован: 12.11.2005 (Сб) 16:46
Откуда: Сапог

Сообщение Pantalone » 17.11.2006 (Пт) 11:09

Короче никаких специфических сообщений у заголовка не возникает при смене курсора, они где-то в другом месте тусуются. Только где?

Pantalone
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 687
Зарегистрирован: 12.11.2005 (Сб) 16:46
Откуда: Сапог

Сообщение Pantalone » 17.11.2006 (Пт) 11:11

Kovu писал(а):Ну можно просто обнулить WM_SETCURSOR =)

Ну это понятно, только не у всех столбцов нужно обнулять, а у определенных. А то стрелки размера вообще пропадут.


Вернуться в Visual Basic 1–6

Кто сейчас на конференции

Сейчас этот форум просматривают: Yandex-бот и гости: 67

    TopList