|
Access - Feldinhalte als Quickinfo anzeigen
Feldinhalte als Quickinfo anzeigen Aus Platzgründen müssen Textfelder, Listenfelder oder Kombinationsfelder in Formularen häufig mit reduzierter Breite dargestellt werden, um alle Steuerelemente im Formular unterbringen zu können. Die Inhalte sind dann häufig nicht komplett zu sehen und müssen erst durch entsprechendes Scrollen im Feld sichtbar gemacht werden. Abhilfe schafft man mit einem Trick: Man definiert den kompletten Feld- oder Listeninhalt einfach als Steuerelement-TipText (QuickInfo). Wenn man den Mauszeiger dann einen kurzen Moment über dem betreffenden Feld oder der Liste stehen lässt, zeigt Access den kompletten Inhalt oder Eintrag als QuickInfo in einem kleinen gelben Kasten darunter an. Alles, was man dazu benötigt, ist eine kleine VBA-Routine in einem globalen Modul, die beim Wechsel des Datensatzes aufgerufen wird und die Inhalte der betreffenden Steuerelemente als QuickInfo definiert:
Sub SETiptextSetzen(frmAktForm As Form)
Dim ctlInForm As Control
On Error Resume Next
For Each ctlInForm In frmAktForm.Controls
With ctlInForm
If .ControlType = acTextBox Then
.ControlTipText = IIf(IsNull(.Value), "NULL", .Value)
ElseIf .ControlType = acComboBox Or _
.ControlType = acListBox Then
If .ColumnCount > 1 Then
.ControlTipText = IIf(IsNull(.Value), "NULL", .Column(.BoundColumn))
Else
.ControlTipText = IIf(IsNull(.Value), "NULL", .Value)
End If
End If
End With
Next ctlInForm
End Sub
In einer Schleife werden alle Steuerelemente des betreffenden Formulars geprüft - handelt es sich um ein Text-, Listen oder Kombinationsfeld, wird der aktuelle Inhalt der Eigenschaft "ControlTipText" zugewiesen. Damit die Routine jeweils beim Wechsel des Datensatzes aufgerufen wird und die korrekten Werte setzen kann, fügt man in der Ereignisprozedur "Beim Anzeigen" des entsprechenden Formulars die folgende Anweisung ein: SETiptextSetzen Me |