Hilfetipps oder Hinweise sind sehr nützlich, da sie die Benutzeroberfläche vereinfachen und dem Benutzer helfen, Objekte zu verstehen, die manchmal nicht selbstverständlich sind. 4D unterstützt Hilfestellungen in den meisten Bereichen und Eingaben, wenn man mit dem Mauszeiger darüber fährt, aber das war bei einem Listenfeldobjekt nicht der Fall.
Mit 4D v16 R5 haben wir dank der Erweiterung zweier Befehle die Möglichkeit geschaffen, einen Hilfetext in einer Listboxzelle anzuzeigen.
Definieren Sie einen Tipp für eine Listbox
Der Befehl OBJECT SET HELP TIP Befehl wurde erweitert, um Listboxen zu unterstützen:
// Set a help tip on myListbox object
OBJECT SET HELP TIP(*; "myListbox"; "Dies ist der Hilfetipp für die Listbox!")
einen Tipp auf einer Listboxzelle anzeigen
Um die Sache noch besser zu machen, können Hilfestellungen in Abhängigkeit von der Mausposition definiert werden. Mit nur wenigen Zeilen Code können Sie Hilfestellungen auf der Grundlage der mit der Maus berührten Spalte und sogar auf der Grundlage jeder Zeile festlegen!
Zu diesem Zweck wurde der Befehl LISTBOX GET CELL POSITION Befehl um zwei neue, optionale Parameter (mouseX und mouseY, in Pixeln) erweitert und gibt die entsprechenden Zahlen column und row zurück.
Dieser Befehl kann während des On mouse move Ereignisses aufgerufen werden, um den Inhalt des Hilfetextes dynamisch zu aktualisieren, je nachdem, in welcher Spalte und Zeile sich die Maus über dem Listenfeld befindet.
GET MOUSE($x;$y;$button)
// Ermittelt die Spalte und Zeile des Listenfeldes, um zu wissen, über welche Zelle der Benutzer fährt
LISTBOX GET CELL POSITION (*; "myListbox";$x;$y;$column;$row)
If (
$column=1) & ($row=1)
// Aktualisieren Sie den Inhalt des Tipps entsprechend der Zelle, über der der Mauszeiger schwebt
OBJECT SET HELP TIP (*; "myListbox"; "This is cell (1;1)")
End if