Главная страница
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.034 c
2-1152941687
Urvin
2006-07-15 09:34
2006.08.06
Как прокрутить содержимое ListView


2-1152902215
Борщ
2006-07-14 22:36
2006.08.06
картинка как progressbar


2-1153462397
Svetok
2006-07-21 10:13
2006.08.06
MySQL


2-1153063435
cando
2006-07-16 19:23
2006.08.06
Файл и приложение


8-1139576813
DelphiLexx
2006-02-10 16:06
2006.08.06
Моделирование и Delphi