СообЧа > База Знаний > Программирование > Delphi

Вопрос

Как показывать хинты для частично видимых элементов ListBox?

Ответ

Hаписать для OnMouseMove следующий код:

procedure TForm1.ListBox1MouseMove(Sender: TObject; Shift: TShiftState; X,Y: Integer);
const
    oldidx : Longint = -1;
var
    idx : Longint;
begin
    with Sender as TListBox do begin
   idx := ItemAtPos(Point(x,y),True);
   if (idx < 0) or (idx = oldidx) then Exit;
   Application.ProcessMessages;
   Application.CancelHint;
        oldidx := idx;
        Hint := '';
if Canvas.TextWidth(Items[idx]) > Width — 4 then Hint:=Items[idx];
    end;
end;

Из конференции Delphi



Copyright © 2000-2004 Сообщество Чайников
Контактная информация