|
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 schaffen Sie mit einem Trick: Sie definieren den kompletten
Feld- oder Listeninhalt einfach als Steuerelement-TipText (QuickInfo).
Wenn Sie den Mauszeiger dann einen kurzen Moment über dem
betreffenden Feld oder der Liste stehen lassen, zeigt Access den
kompletten Inhalt oder Eintrag als QuickInfo in einem kleinen gelben
Kasten darunter an.
Alles, was Sie dazu benötigen, 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-, Listenfeld 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ügen Sie in der
Ereignisprozedur "Beim Anzeigen" des entsprechenden
Formulars die folgende Anweisung ein:
SETiptextSetzen Me
|