Главная страница
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.033 c
1-1151314419
ujhtw
2006-06-26 13:33
2006.08.06
Работа с изображением


2-1153325727
!_SM_!
2006-07-19 20:15
2006.08.06
Типы в Dll


4-1145025162
SMAC
2006-04-14 18:32
2006.08.06
Print emul


2-1152877539
solenko
2006-07-14 15:45
2006.08.06
Помогоите с запросом


15-1152595364
tButton
2006-07-11 09:22
2006.08.06
а я вот призадумался