vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
Blitzschnelles Erstellen von grafischen Diagrammen!  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2025
 
zurück

 Sie sind aktuell nicht angemeldet.Funktionen: Einloggen  |  Neu registrieren  |  Suchen

Fortgeschrittene Programmierung
Bleibt Dir doch  
Autor: Tolwyn
Datum: 27.02.02 15:24

Hi,

hiermit kannst Du Dir ein Control oder eine Auflistung von Controls anhand des Namens geben lassen, und auch weiterverwenden. Außerdem zeigt der Code, wie man dann feststellen kann um was für ein Control es sich handelt.

Private Sub Command1_Click()
  Dim oObject     As Object
  Dim oControl    As Control
  Dim sName       As String
 
  Set oObject = GetControl(Me, "List1")
  If Not oObject Is Nothing Then
    ' Ok ein Control ODER eine Auflistung von Controlls
    ' mit diesem Namen existiert.
    ' Nun müssen wir nur wissen um was es sich handelt
    On Error Resume Next
    ' Welches Attribut hat jedes Control ? Genau
    ' einen Namen. Also wenn wir hier einen Fehler
    ' bekommen, dann muss es wohl eine Auflistung von
    ' Controls sein.
    sName = oObject.name
    If Err = 0 Then
      ' Ein einzelnes Control
      On Error GoTo 0
      Set oControl = oObject
      MsgBox oControl.name
      ' So kann man z.B. feststellen was für Control das
      ' denn eigentlich ist
      If TypeOf oControl Is TextBox Then
        Debug.Print "Eine TextBox"
      ElseIf TypeOf oControl Is ListBox Then
        Debug.Print "Eine ListBox"
      ElseIf TypeOf oControl Is ComboBox Then
        Debug.Print "Eine ComboBox"
      End If
    Else
      ' Eine Auflistung von Controls
      Err.Clear
      On Error GoTo 0
      For Each oControl In oObject
        sName = sName & oControl.name & vbCrLf
      Next oControl
      MsgBox "Gleich mehrere : " & vbCrLf & sName
      ' Oder z.B.
      MsgBox oObject(0).name
    End If
  End If
 
End Sub
 
Public Function GetControl(oForm As Form, _
                            sControllName As String) As Object
  Dim oControl    As Object
 
  On Error GoTo Error_
  Set GetControl = oForm.Controls(sControllName)
  Exit Function
Error_:
  GetControl = Nothing
End Function
Viel Spaß damit!

Gruß
Tolwyn
alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
Arbeiten mit unbekannten Controls75Wilfried27.02.02 14:24
Re: Arbeiten mit unbekannten Controls278ModeratorDieter27.02.02 14:39
Bleibt Dir doch 39Tolwyn27.02.02 15:24
Re: Bleibt Dir doch 29Wilfried27.02.02 15:43
Null Problemo32Tolwyn27.02.02 15:55

Sie sind nicht angemeldet!
Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.

Einloggen  |  Neu registrieren

Funktionen:  Zum Thema  |  GesamtübersichtSuchen 

nach obenzurück
 
   

Copyright ©2000-2025 vb@rchiv Dieter Otter
Alle Rechte vorbehalten.
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.

Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel