VBA (ListBox)
Как в ListBox'е определить, на каком элементе ListBox'а (на какой строке) находится курсор мыши (список большой - имеет полосу прокрутки)?
Внутренними средствами VBA ты этого никак не сделаешь. Наверное, можно подключиться к каким-нибудь виндузовым длл-ям, узнать оттужа координаты курсора и т.п. Думается мне, что подобный геморрой не оправдан? Зачем тебе это, если не секрет?
Зачем тебе это, если не секрет?
Хотел, чтобы при наведении курсора на строку выводилась некоторая информация, вроде комментария к данной строке.
Хотел, чтобы при наведении курсора на строку выводилась некоторая информация, вроде комментария к данной строке.
А ты сделай его с двумя столбцами, один будет название, а другой - пояснения.
Как в ListBox'е определить, на каком элементе ListBox'а (на какой строке) находится курсор мыши (список большой - имеет полосу прокрутки)?
Просто идея: для ListBox есть функция ItemFromPoint, реализованная через сообщение LB_ITEMFROMPOINT. Может, это можно в VB использовать?
Второй вариант: начав с GetTopIndex для всех items брать GetItemRect и смотреть, не попали ли в него текущие координаты мыши... (эти функции тоже реализуются через сообщения).
Правда, действительно, стоит ли оно того?