Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2006.08.06;
Скачать: [xml.tar.bz2];

Вниз

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;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.45 MB
Время: 0.029 c
2-1153430505
Батя
2006-07-21 01:21
2006.08.06
WebBrowser


2-1153379243
novill
2006-07-20 11:07
2006.08.06
Не получается послать сообшение (SendMessage)


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


4-1145147097
Volf_555
2006-04-16 04:24
2006.08.06
Как изменять значок программы в трэи по необходимости?!


15-1152610934
Шмелъ
2006-07-11 13:42
2006.08.06
Вопрос жителям украины





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский