Partager via


Événements de formulaire pour les utilisateurs de Visual Basic 6.0

Mise à jour : novembre 2007

Il existe quelques différences dans le comportement des événements de formulaire entre Visual Basic 6.0 et Visual Basic 2008.

Différences conceptuelles

Initialize, événement

Dans Visual Basic 6.0, l'événement Initialize est utilisé pour exécuter du code avant le chargement d'un formulaire.

Dans Visual Basic 2008, du code d'initialisation doit être ajouté au constructeur de formulaire (Sub New()) après l'appel à InitializeComponent(), comme le montre l'exemple suivant :

' Visual Basic 6.0 
Private Sub Form_Initialize()
    MsgBox("The form is loading")
End Sub

 

' Visual Basic .NET 
Public Sub New()
    ' This call is required by the Windows Form Designer.
    InitializeComponent()
    ' Add any initialization after the InitializeComponent() call.
    MsgBox("The form is loading")
End Sub
Remarque :

Une utilisation commune de l'événement Initialize consiste à afficher un formulaire de « démarrage » pour présenter des informations pendant le chargement du formulaire. Les applications Visual Basic 2008 ont une propriété SplashScreen qui permet d'afficher automatiquement un formulaire pendant le démarrage des applications. Pour plus d'informations, consultez Comment : spécifier un écran de démarrage pour une application (Visual Basic).

Terminate, événement

Dans Visual Basic 6.0, l'événement Terminate est utilisé pour exécuter du code après le déchargement d'un formulaire.

Dans Visual Basic 2008, l'événement Terminate n'est plus pris en charge. Le code d'arrêt doit être exécuté à l'intérieur de la méthode Dispose, avant l'appel à MyBase.Dispose().

Remarque :

La méthode Dispose est automatiquement appelée pour le formulaire principal d'une application ; vous devez l'appeler explicitement pour tout autre formulaire.

L'exemple suivant illustre ces différences.

' Visual Basic 6.0 
Private Sub Form_Terminate()
    MsgBox "The form was terminated"
End Sub

 

' Visual Basic .NET 
Protected Overloads Overrides Sub Dispose(ByVal disposing As Boolean)
    If disposing AndAlso components IsNot Nothing Then
        MsgBox("The form was terminated")
        components.Dispose()
    End If
    MyBase.Dispose(disposing)
End Sub

Unload, événement

Dans Visual Basic 6.0, l'événement Unload possède un argument Cancel ; dans Visual Basic 2008, cet événement est remplacé par l'événement Closed qui ne possède pas d'argument Cancel. Si vous devez annuler un déchargement, utilisez plutôt l'événement Closing.

Événements de souris de formulaires MDI

Dans Visual Basic 6.0, les formulaires MDI prend en charge les événements de souris. Dans Visual Basic 2008, les événements Click, MouseDown, MouseMove et MouseUp ne sont plus pris en charge pour les formulaires MDI, parce que ceux-ci ne disposent pas de zone client pour la réception des événements de souris.

Voir aussi

Concepts

Objet Form pour les utilisateurs de Visual Basic 6.0

Référence

Form

Form.Closing