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

Вниз

Прорисовка ListBox   Найти похожие ветки 

 
Igor_thief   (2004-12-19 16:58) [0]

Как сделать такое? Есть ListBox. В нем выделен один элемент. При движении мишки над Listbox"om надо чтобы элементы находящийся под курсором мишки подсвечивался (только подсвечивался, а не ставал активным).


 
begin...end ©   (2004-12-19 17:03) [1]

> Igor_thief   (19.12.04 16:58)

Думаю, что копать нужно в сторону TListBox.OnMouseMove и TListBox.ItemAtPos.


 
begin...end ©   (2004-12-19 17:05) [2]

> Igor_thief

Кстати, а TListView не подойдёт? Там уже есть свойство HotTrack.


 
antonn ©   (2004-12-19 17:39) [3]


> Igor_thief   (19.12.04 16:58)  

Так, что ли?

var track:integer;

procedure TForm1.ListBox1DrawItem(Control: TWinControl; Index: Integer;
 Rect: TRect; State: TOwnerDrawState);
begin
With ( Control As tListBox ).Canvas Do  Begin
 if Index=track then begin
     Font.Color  := 204;
     Brush.Color := 14737663;
 end else begin
     Font.Color  := clWindowText;
     Brush.Color := clWindow;
 end;
   FillRect(Rect);
   TextOut(Rect.Left, Rect.Top, ( Control As tListBox ).Items.Strings[index]);// +"  "+ pWWW_Conn(List_Conn.Items.Objects[ index ])^.sss);
 end;
end;

procedure TForm1.ListBox1MouseMove(Sender: TObject; Shift: TShiftState; X,
 Y: Integer);
begin
  track:= y div ( Sender As tListBox ).ItemHeight;
  ( Sender As tListBox ).Invalidate;
end;

procedure TForm1.FormCreate(Sender: TObject);
begin
 ListBox1.DoubleBuffered:=true;
end;


 
Igor_thief   (2004-12-20 11:44) [4]

begin...end ©   (19.12.04 17:05) [2]
Не подойдет.

begin...end ©   (19.12.04 17:03) [1]
Это понятно. Но как в OnMouseMove перепрорисовывать конкретный элемент под мышкой?


 
Igor_thief   (2004-12-20 11:45) [5]

antonn ©   (19.12.04 17:39) [3]
ЧТо-то похожее, но чтобы не терялся выделенный элемент!


 
Igor_thief   (2004-12-20 11:56) [6]

antonn ©   (19.12.04 17:39) [3]
Спасибо за идею. Я этот код немного приукрашу и все будет работать как надо.



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

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

Наверх




Память: 0.45 MB
Время: 0.03 c
4-1100842993
Progh
2004-11-19 08:43
2005.01.02
Как найти все окна с заданным заголовком и классом?


14-1102670521
Photo
2004-12-10 12:22
2005.01.02
Настройка Word


1-1103278004
Jeka
2004-12-17 13:06
2005.01.02
Компонент BitBtn


14-1102650151
school
2004-12-10 06:42
2005.01.02
Delphi крякнутый


3-1102320458
stud
2004-12-06 11:07
2005.01.02
использование хранимых процедур





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский