Partager via


Comment : convertir un type défini par l'utilisateur en structure Visual Basic

Mise à jour : novembre 2007

L'instruction Type de Visual Basic 6.0 est mise à niveau par l'instruction Structure de Visual Basic 2008. Deux autres options de mise à niveau du type sont également abordées dans cette rubrique : la conversion en une classe et la conversion en une interface.

Le type Visual Basic 6.0 suivant est abordé dans les procédures qui suivent :

Type Customer
    Dim FirstName As String
    Dim LastName As String
    Dim Id As Long
End Type

Private Function FormatFullName(aCustomer As Customer) As String
    FormatFullName = aCustomer.FirstName & " " & aCustomer.LastName
End Function

L' Assistant Mise à niveau met automatiquement à niveau un type Visual Basic 6.0 vers une structure Visual Basic 2008. Structure est un type qui prend en charge les membres, tels que les méthodes et les propriétés.

Pour mettre à niveau un type vers une structure

  1. Exécutez l'Assistant Mise à niveau.

    Remarque :

    L' Assistant Mise à niveau est un outil utilisé pour mettre à niveau une application Visual Basic 6.0 vers Visual Basic 2008. Il est lancé automatiquement lorsque vous ouvrez un projet Visual Basic 6.0 dans Visual Basic 2008. Pour plus d'informations, consultez Comment : mettre à niveau un projet à l'aide de l'Assistant Mise à niveau de Visual Basic.

  2. Si vous voulez tirer parti d'autres fonctionnalités du type Structure, recherchez des méthodes qui sont plus adaptées à la structure. Dans cet exemple, la méthode FormatFullName pourrait être convertie en une méthode FormatFullName dans la structure :

    Structure Customer
        Dim FirstName As String
        Dim LastName As String
        Dim Id As Integer
    
        Public Function FormatFullName() As String
            Return FirstName & " " & LastName
        End Function
    End Structure
    

L' Assistant Mise à niveau met automatiquement à niveau un type Visual Basic 6.0 vers une structure Visual Basic 2008. Le type Class prend en charge les mêmes membres qu'un Structure, mais c'est un type référence. Une classe peut servir de classe de base, alors qu'une structure ne le peut pas.

Pour mettre à niveau vers une classe

  1. Exécutez l'Assistant Mise à niveau.

  2. Remplacez Structure par Class.

  3. Si vous voulez tirer parti d'autres fonctionnalités du type Class, recherchez des méthodes qui sont plus adaptées à la structure. Le code suivant illustre l'incorporation de FormatFullName dans la classe, ainsi que la propriété Id .

    Class Customer
        Dim FirstName As String
        Dim LastName As String
        Private idValue As Integer
    
        Public Property Id() As Integer
            Get
                Return idValue
            End Get
            Set(ByVal Value As Integer)
                idValue = Value
            End Set
        End Property
    
        Public Function FormatFullName() As String
            Return FirstName & " " & LastName
        End Function
    End Class
    

Une troisième option est la conversion de la structure en une interface.

Pour mettre à niveau vers une interface

  1. Exécutez l'Assistant Mise à niveau.

  2. Remplacez Structure par Interface.

  3. Remplacez les variables par les déclarations de propriété. N'incluez pas l'implémentation.

  4. Ajoutez les méthodes, mais supprimez l'implémentation.

  5. Le code se présente comme suit :

    Interface Customer
        Property FirstName() As String
        Property LastName() As String
        Property Id() As String
    
        Function FormatFullName() As String
    End Interface
    
  6. L'interface peut ensuite être implémentée par une autre classe. La définition est indiquée ci-dessous.

    Class NewCustomer
        Implements Customer
    
        Public Property FirstName() As String Implements Customer.FirstName
            Get
                ' Add code here.
            End Get
            Set(ByVal Value As String)
                ' Add code here.
            End Set
        End Property
    
        Public Property Id() As String Implements Customer.Id
            Get
                ' Add code here.
            End Get
            Set(ByVal Value As String)
                ' Add code here.
            End Set
        End Property
    
        Public Property LastName() As String Implements Customer.LastName
            Get
                ' Add code here.
            End Get
            Set(ByVal Value As String)
                ' Add code here.
            End Set
        End Property
    
        Public Function FormatFullName() As String _
            Implements Customer.FormatFullName
            ' Add code here.
        End Function
    End Class
    

Voir aussi

Tâches

Comment : mettre à niveau un projet à l'aide de l'Assistant Mise à niveau de Visual Basic

Référence

Structure, instruction

Class, instruction (Visual Basic)

Interface, instruction (Visual Basic)