Как снимать выделение в ListBox, если кликают в молоко?
От: Albatross  
Дата: 14.02.08 11:59
Оценка:
Я хочу, если даблклик происходит в место листбокса, где нет элементов, то снималось выделение. Просмотрев список методов, я увидел, что ничего похожего на HitTest там нет — так как же определить, что кликнули на пустом месте?

Спасибо
Re: Как снимать выделение в ListBox, если кликают в молоко?
От: apin  
Дата: 14.02.08 12:32
Оценка:
Здравствуйте, Albatross, Вы писали:

A>Я хочу, если даблклик происходит в место листбокса, где нет элементов, то снималось выделение. Просмотрев список методов, я увидел, что ничего похожего на HitTest там нет — так как же определить, что кликнули на пустом месте?


A>Спасибо


А чем не устраивает UINT ItemFromPoint( CPoint pt, BOOL& bOutside ) ?
Re[2]: Как снимать выделение в ListBox, если кликают в молок
От: Albatross  
Дата: 14.02.08 12:44
Оценка:
Здравствуйте, apin, Вы писали:

A>Здравствуйте, Albatross, Вы писали:


A>>Я хочу, если даблклик происходит в место листбокса, где нет элементов, то снималось выделение. Просмотрев список методов, я увидел, что ничего похожего на HitTest там нет — так как же определить, что кликнули на пустом месте?


A>>Спасибо


A>А чем не устраивает UINT ItemFromPoint( CPoint pt, BOOL& bOutside ) ?


Попробовал его использовать. Он возвращает ближайший элемент, т.е. элемент всегда возвращается. Даже если мы от него вообще далеко (например, в списке один элемент, а я нахожусь внизу списка, где элементов нет и даблкикаю)
Re[3]: Как снимать выделение в ListBox, если кликают в молок
От: apin  
Дата: 15.02.08 07:08
Оценка:
A>Попробовал его использовать. Он возвращает ближайший элемент, т.е. элемент всегда возвращается. Даже если мы от него вообще далеко (например, в списке один элемент, а я нахожусь внизу списка, где элементов нет и даблкикаю)

А потом получи
GetItemRect( int nIndex, LPRECT lpRect )
и проверь попадаешь ты в него иле нет
Re[3]: Как снимать выделение в ListBox, если кликают в молок
От: apin  
Дата: 15.02.08 09:58
Оценка:
Удалено избыточное цитирование. — SchweinDeBurg

Здравствуйте, Albatross, Вы писали:

A>Попробовал его использовать. Он возвращает ближайший элемент, т.е. элемент всегда возвращается. Даже если мы от него вообще далеко (например, в списке один элемент, а я нахожусь внизу списка, где элементов нет и даблкикаю)


А не смотрел чему равно — bOutside ?
Вот мнение MSDN:
Reference to a BOOL variable which will be set to TRUE if pt is outside the client area of the list box, FALSE if pt is inside the client area of the list box.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.