Die nachfolgende Routine zeigt, wie man alle Steuerelemente eines bestimmten Typs innerhalb einer Form ermitteln kann, um dann z.B. gezielt Eigenschaften zu ändern. Dim Control As Control For Each Control In Form1.Controls ' Leere Textfelder rot markieren If TypeOf Control Is TextBox Then If Control.Text = "" Then Control.BackColor = RGB(255, 0, 0) Else Control.BackColor = RGB(255, 255, 255) End If End If ' oder alle Label-Steuerelemente "fett" If TypeOf Control Is Label Then Control.FontBold = True End If Next Control Ein weiteres Beispiel für das Scannen aller Controls einer Form ist das autom. Zuweisen einer bestimmten Schrift. Lassen Sie z.B. den Anwender Ihrer Software individuell einstellen, welche Schrift für die Darstellung der Steuerlemente und der Form selbst verwendet werden soll. Public Function SetFormFont(F As Form, _ ByVal FontName As String, ByVal FontSize As Integer) _ As Boolean Dim Result As Boolean Dim Control As Control Dim I As Integer ' Prüfen, ob gewünschte Schrift vorhanden ' Hierzu die Fonts-Auflistung "durchlaufen" Result = False For I = 0 To Screen.FontCount If Screen.Fonts(I) = FontName Then Result = True Exit For End If Next I ' OK, Schrift ist vorhanden If Result Then ' Manche Steuerelemente besitzen keine ' Font-Eigenschaft: Deshalb Fehler unterdrücken On Local Error Resume Next For Each Control In F Control.Font.Name = FontName Control.Font.Size = FontSize Next On Local Error GoTo 0 End If SetFormFont = Result End Function Es lassen sich auch ganz bestimmte Steuerelemnt-Typen von der autom. Schrift-Zuweisung ausschliessen. Hierzu fügen Sie einfach folgenden Code zwischen For Each Control In F ... Next ein: For Each Control In F ' wenn es sich um KEINE ListBox handelt If Not TypeOf Control Is ListBox Then Control.Font.Name = FontName Control.Font.Size = FontSize End If Next Der Aufruf der Routine zum autom. Setzen der Schriftart aller Steuerelemente einer Form erfolgt so: Private Sub Form_Load() ' z.B. wenn Form geladen wird SetFormFont Me, "Tahoma", 8 End Sub Dieser Tipp wurde bereits 22.783 mal aufgerufen. Voriger Tipp | Zufälliger Tipp | Nächster Tipp
Anzeige
Diesen und auch alle anderen Tipps & Tricks finden Sie auch auf unserer aktuellen vb@rchiv Vol.6 (einschl. Beispielprojekt!) Ein absolutes Muss - Geballtes Wissen aus mehr als 8 Jahren vb@rchiv! - nahezu alle Tipps & Tricks und Workshops mit Beispielprojekten - Symbol-Galerie mit mehr als 3.200 Icons im modernen Look Weitere Infos - 4 Entwickler-Vollversionen (u.a. sevFTP für .NET), Online-Update-Funktion u.v.m. |
vb@rchiv CD Vol.6 Geballtes Wissen aus mehr als 8 Jahren vb@rchiv! Online-Update-Funktion Entwickler-Vollversionen u.v.m. Tipp des Monats Mai 2024 Hermann Röttger Wochentage eines Datumsbereichs ermitteln Wochentage eines Datumsbereichs ermitteln, optional mit Feiertagsberechnung TOP! Unser Nr. 1 Neu! sevDataGrid 3.0 Mehrspaltige Listen, mit oder ohne DB-Anbindung. Autom. Sortierung, Editieren von Spalteninhalten oder das interaktive Hinzufügen von Datenzeilen sind ebenso möglich wie das Erstellen eines Web-Reports. |
||||||||||||||||
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein. |