Главная страница
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.05 c
1-1150978339
Bundeskanzler
2006-06-22 16:12
2006.08.06
Поиск в TListView


15-1152176226
alles
2006-07-06 12:57
2006.08.06
asp доступ к Paradox-у по локалке


2-1153351176
batya17
2006-07-20 03:19
2006.08.06
Закрытие окна


2-1153165789
Vivax
2006-07-17 23:49
2006.08.06
popupmenu


15-1150354588
ilya39
2006-06-15 10:56
2006.08.06
Стоит ли ехать в Питер перед саммитом G8?