Mein zuletzt geposteter Code zeigt jetzt
nur einen Hint an, wenn die Maus über einem Objekt ist.
Wenn du möchtest, dann das nur dann Infos gezeigt werden,
wenn das Objekt markiert ist, musst du einfach folgende Methode
in meinem obigen Beispiel ersetzen:
Delphi-Quellcode:
procedure TForm1.ListBox1MouseMove(Sender: TObject; Shift: TShiftState; X,
Y: Integer);
var
Index: integer;
begin
with TListbox(Sender) do
begin
Index:= ItemAtPos(Point(x,y), true);
ShowHint:= (Index <> -1) and (Index = ItemIndex);
If (ShowHint) then
Hint:= TItemData(Items.Objects[Index]).InfoString;
end;
end;
P.S. Warum verdoppelst du teilweise unnötig den Code?
Du setzt z.B. die Variable "Index" und nimmst dann 2 Zeilen später
doch wieder das gesamte Objekte mit "ItemAtPos".
Bei größeren Projekten macht das schon mal was aus...
Gruß
Pfoto