Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.11.13;
Скачать: CL | DM;

Вниз

ListBox и LB_ITEMATPOS   Найти похожие ветки 

 
Ломброзо ©   (2003-10-29 17:06) [0]

Промучившись час в VB, пытаясь получить индекс итема с координатами X и Y в MouseMove при помощи LB_ITEMATPOS, плюнул и полез смотреть, как это реализовано в TCustomListBox.ItemAtPos в Delphi. Обнаружил, что поиск индекса в VCL производится путем тупого перебора всех индексов итемов, получению их RECT и вызову PtInRect.

Ваши соображения - отчего сделано так, а не посредством посылки LB_ITEMATPOS?


 
Игорь Шевченко ©   (2003-10-29 17:21) [1]

Имеется в виду LB_ITEMFROMPOINT ?

Не знаю, нормально работает, пример есть в http://www.delphikingdom.com/treasury/combo.htm


 
MBo ©   (2003-10-29 17:22) [2]

>отчего сделано так, а не посредством посылки LB_ITEMATPOS
вполне возможно, что LB_ITEMATPOS подобным же образом и работает (ведь при OwnerDraw не сделаешь просто Верхний+Y/высотастроки)


 
Ломброзо ©   (2003-10-29 17:27) [3]

> Имеется в виду LB_ITEMFROMPOINT ?

:) он самый. В lResult отчего-то постоянно возвращается флаг нахождения в неклиентской области.


 
Ломброзо ©   (2003-10-29 17:28) [4]

точнее, "ненахождения в клиентской области".


 
Игорь Шевченко ©   (2003-10-29 17:32) [5]

Я ссылку дал, глянь. Там именно по MouseMove определяется Item


 
Ломброзо ©   (2003-10-29 17:35) [6]

спасибо



Страницы: 1 вся ветка

Текущий архив: 2003.11.13;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.045 c
8-41753
Ozone
2003-07-07 09:34
2003.11.13
Рисование на рабочем столе


3-41021
Vadim S
2003-10-15 17:58
2003.11.13
Ошибка при выполнении запроса MS SQL


14-41921
kaif
2003-10-19 17:10
2003.11.13
Как грамотно писать: компонент или компонента?


14-42077
REA
2003-10-23 14:42
2003.11.13
Кстати о Матрице


4-42302
maxi
2003-09-09 12:21
2003.11.13
Как програмно открыть файл с заданным расширением(например .rm)?