Показать сообщение отдельно
  #4  
Старый 03.01.2009, 00:18
Аватар для 0nni
0nni 0nni вне форума
Начинающий
 
Регистрация: 13.12.2008
Адрес: Туапсе
Сообщения: 161
Репутация: 20
По умолчанию

Такой вариант устроит?
Код:
procedure TForm1.ListBox1DragOver(Sender, Source: TObject; X, Y: Integer;
  State: TDragState; var Accept: Boolean);
var i : Integer;
    rt : TRect;
    dc : Cardinal;
begin
  if y <= 4 then istBox1.TopIndex := ListBox1.TopIndex - 1;
  if y >= ListBox1.Height - 4 then ListBox1.TopIndex := ListBox1.TopIndex + 1;

  i := ListBox1.ItemAtPos(Point(x,y), true);
  if ListBox1.Tag = i then exit;
  rt := ListBox1.ItemRect(ListBox1.Tag);
  InvalidateRect(ListBox1.Handle, @rt, true);
  ListBox1.Tag := i;
  rt := ListBox1.ItemRect(i);
  dc := GetDC(ListBox1.Handle);
    MoveToEx(dc, rt.Left, rt.Top + 1, nil);
    LineTo(dc, rt.Right, rt.Top + 1);
  ReleaseDC(ListBox1.Handle, dc);
end;
Дальше доработай.
__________________
...сказал, и загрустил от бесспорной своей правоты
Ответить с цитированием