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

Вниз

LIstBox mouseMove => selected items   Найти похожие ветки 

 
Officeman   (2006-07-19 14:38) [0]

как реализовать?

Тех.Задание
навёл мышью на элемент items и он автоматически выделился.
(без нажатия мышью)

// ;) пробовал различными дурацкими способоми , непомогло (
// обращаюсь к вам за помощью


procedure TForm2.HTMListBox1MouseMove(Sender: TObject; Shift: TShiftState;  X, Y: Integer );
var
Value:TNotifyEvent;
begin
value:=HTMListBox1Click;
HTMListBox1.OnClick:=Value;
end;


 
Elen ©   (2006-07-19 14:51) [1]


procedure TForm1.ListBox1MouseMove(Sender: TObject; Shift: TShiftState; X,
 Y: Integer);
var t:tpoint;
begin
t.X :=x;t.Y :=y;
ListBox1.ItemIndex:=ListBox1.ItemAtPos(t,true);
end;


 
StriderMan ©   (2006-07-19 14:53) [2]


> Elen ©   (19.07.06 14:51) [1]

Упростим
procedure TForm1.ListBox1MouseMove(Sender: TObject; Shift: TShiftState; X,
begin
 ListBox1.ItemIndex:=ListBox1.ItemAtPos(Point(X, Y),true);
end;


 
Elen ©   (2006-07-19 14:56) [3]


> StriderMan © Упростим

Одна голова хорошо, а две уже упрощенно ;-)


 
Officeman   (2006-07-19 15:38) [4]

Мастера вы супер! всё выделяется.  

дальше...
Каждому Элементу LIstBox-a    соответствкет свой  HINT
который присваивается при OnClick()

как доделать чтоб кроме выделения. ещё и OnClick срабатывал и вылезал HINT


 
StriderMan ©   (2006-07-19 15:46) [5]


> Officeman   (19.07.06 15:38) [4]

присваивать то же значение в обработчике MouseMove. а Хинт должен появится при удержании мыши над контролом.

Можно конечно в MouseMove вызывать обработчик Onclick

procedure TForm1.ListBox1MouseMove(Sender: TObject; Shift: TShiftState; X,
begin
ListBox1.ItemIndex:=ListBox1.ItemAtPos(Point(X, Y),true);
ListBox1Click(Sender);
end;


но это будет жестоко если в обработчике Click выполняется много всего.


 
Elen ©   (2006-07-19 15:46) [6]

procedure TForm1.ListBox1MouseMove(Sender: TObject; Shift: TShiftState; X,
begin
ListBox1.ItemIndex:=ListBox1.ItemAtPos(Point(X, Y),true);
ListBox1Click(self)
    //Про хинт не знаю


end;


 
Хинтоман   (2006-07-19 17:41) [7]


 ListBox1.Hint := ListBox1.Items[ListBox1.ItemIndex];
 Application.ActivateHint(Point(X, Y));



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

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

Наверх




Память: 0.48 MB
Время: 0.028 c
2-1153463121
Levin_610
2006-07-21 10:25
2006.08.06
Проблема при создании Сервиса c StartServiceCtrlDispatcher.


2-1152800293
K_Lock
2006-07-13 18:18
2006.08.06
Выделение строк таблицы разным цветом по времени


1-1151265041
Nic
2006-06-25 23:50
2006.08.06
JPG в TBitMap при работе с Timage


1-1150381898
Desdechado
2006-06-15 18:31
2006.08.06
Caption в отчете FastReport 2.5


8-1139561855
Karlsun4ik
2006-02-10 11:57
2006.08.06
Рисую на рабочем столе