![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Мастера, подскажите как сделать... [D6]
Интересующийся... © (2002-11-17 11:43:00)сделать чтобы при клике правой кнопкой мыши, например, на ListBox происходило выделение ч-ного итема маркером... ну как это происходит при нажатии левой кнопкой...
Большое спасибо...
Foxtrot (2002-11-17 13:18:00) [1]Вот так должно работать 100%. Правда тогда (без спец доработки)не отличить левый клик от правого.
procedure TForm1.ListBox1MouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
begin
if Button=mbRight then Mouse_Event(MOUSEEVENTF_LEFTDOWN,0,0,0,0);
end;
procedure TForm1.ListBox1MouseUp(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
begin
if Button=mbRight then Mouse_Event(MOUSEEVENTF_LEFTUP,0,0,0,0);
end;
Интересующийся... (2002-11-17 12:52:00) [2]Сейчас проверил потосчнее...
Процедура не подходит...
Она всего лишь осуществляет как бы передачу фокуса... но это не дало того что надо...
при нажатии левой кнопки итем выделяется синим маркером, т.е. на самом деле выделяется, ваша команда не выделяет, а простонаводит рамочку на первый итем и если ткнуть правой мышью на 3 ий итем, то ничего не изменится...
мне это надо для того чтобы на определенный итем выпадало попап меню....
может есть другой способ???
LongIsland (2002-11-17 12:40:00) [3]Угу... Настойки вынь поменять:-)
Интересующийся... (2002-11-17 12:38:00) [4]А можно ли выделить синим маркером... ???
Если это очень муторно, тогда не надо...
LongIsland (2002-11-17 12:06:00) [5]
procedure TForm1.ListBox1MouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
var
Msg: TMsg;
begin
if Button = mbRight then
begin
SendMessage(ListBox1.Handle, WM_LBUTTONDOWN, Msg.wParam, Msg.lParam);
end;
end;