Hallo ihr Lieben,
ich habe eine TListbox in der Namen von Leuten aufgezählt sind. Wenn man nun mit den Mauscursor dadrüber fährt, möchte ich, dass die Adresse der Personen angezeigt wird.
Habe ich auch fast soweit geschafft, wie ich es möchte, aber es tun sich zwei Probleme auf.
1: Dieses "dadrüberfahren", durch die Liste funktioniert nicht. Ich muss jedes Mal aus der Listbox heraus und wieder herein mit den Mauszeiger.
2: Wenn ich dann wieder auf einen Eintrag gehe, zeigt er mir die Adresse vom vorherigen Eintrag ein, auf den ich war. -.-
Ich habe schon folgende Thread gelesen:
Listbox.hint oder auch hier
ListBox: Hint = Item @ Mouse, klappt beides bei mir nicht. -.- Ich hab jetzt auch die Struktur von dem Beispiel hier ausprobiert und auch keinen Erfolg gehabt.
Hint ähnlich wie ICQ Benutzer-Informationen
Hier ist mein Quellcode:
Delphi-Quellcode:
procedure TForm.lst1MouseMove(Sender: TObject; Shift: TShiftState; X,
Y: Integer);
var ID: Integer;
Text, neuerHint: string;
begin
Application.CancelHint;
ID:=lst1.ItemAtPos(Point(x,y), True);
if (ID>=0) then
begin
Text:=lst1.Items.Strings[ID];
//[...]Datenbankabfrage nach der Adresse[...]
neuerHint:=dtm.sdqrySuche.FieldByName('strasse').AsString+ #13+#10+
dtm.sdqrySuche.FieldByName('plz').AsString+' ' +
dtm.sdqrySuche.FieldByName('ort').AsString;
if neuerHint<>lst1.Hint then
begin
lst1.Hint:=neuerHint;
Application.ActivateHint(Point(x,y));
end;
end;
end;
Über Tipps wäre ich sehr erfreut.
Ich mach mir jetzt erstmal 'n Kakao.