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

Вниз

Как создать эффект нажатия левой кнопки мыши в ListBox?   Найти похожие ветки 

 
AlexanderMS ©   (2006-08-15 16:51) [0]

Мне нужно, чтобы после нажатии правой кнопки мыши элемент ListBox, находящийся под курсором, был выбран, как будто по нему щёлкнули левой кнопкой мыши.

Пробовал выбрать элемент через ItemAtPos, но происходит большая задержка. Пришёл к выводу: нужно сделать, чтобы при нажатии правой кнопки мыши был вызван обработчик события TCustomListBox.WMLButtonDown. Но тогда я не могу послать сообщение через SendMessage.

Подскажите, пожалуйста, как лучше сделать и как именно?


 
Lexer ©   (2006-08-15 17:06) [1]

Ты будешь, удивлен, но TCustomListBox.WMLButtonDown тоже вызывает ItemAtPos.
Скорее всего задержка из-за чего-то другого...


 
clickmaker ©   (2006-08-15 17:07) [2]


> Пробовал выбрать элемент через ItemAtPos, но происходит
> большая задержка


никаких задержек

procedure TForm1.ListBox1MouseDown(Sender: TObject; Button: TMouseButton;
 Shift: TShiftState; X, Y: Integer);
var Index: integer;
begin
 if Button = mbRight then begin

   Index := ListBox1.ItemAtPos(Point(X, Y), True);
   if (Index >= 0) then
     ListBox1.ItemIndex := Index;
 end;
end;



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

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

Наверх




Память: 0.47 MB
Время: 0.032 c
15-1154946124
Сатир
2006-08-07 14:22
2006.09.03
Проблема с загрузкой письма в компонент Indy


2-1155186988
max1991
2006-08-10 09:16
2006.09.03
CheckListBox


15-1154698756
HeadHunter
2006-08-04 17:39
2006.09.03
Приглашаем на работу программистов (Qulix Systems, Minsk)


1-1153308395
Youta
2006-07-19 15:26
2006.09.03
Как расположить окно поверх другого, когда выполняется длинный пр


2-1155311676
ArtemESC
2006-08-11 19:54
2006.09.03
Хочу написать компонент...