Objet Form pour les utilisateurs de Visual Basic 6.0
Mise à jour : novembre 2007
L'objet Form de Visual Basic 6.0 est remplacé par la classe Form dans Visual Basic 2008. Les noms de certains événements, propriétés, méthodes et constantes ont changé. En outre, dans certains cas, leur comportement est également différent.
Différences conceptuelles
Événements Activate et Deactivate
Dans Visual Basic 6.0, les événements Activate et Deactivate sont déclenchés uniquement lors du basculement entre formulaires.
Dans Visual Basic 2008, les événements Activated et Deactivate sont également déclenchés lors du basculement de ou vers d'autres applications.
Événement QueryUnload
Dans Visual Basic 6.0, l'événement QueryUnload accepte deux arguments, Cancel et UnloadMode. En interrogeant l'argument UnloadMode, vous pouvez déterminer la raison pour laquelle le formulaire est déchargé, puis annuler si nécessaire.
Dans Visual Basic 2008, l'événement QueryUnload est remplacé par l'événement FormClosing ; UnloadMode est remplacé par CloseReason.
Propriété Picture
Dans Visual Basic 6.0, une image assignée à la propriété Picture est affichée dans le coin supérieur gauche du formulaire si la bitmap est plus petite que le formulaire.
Dans Visual Basic 2008, la propriété Picture est remplacée par la propriété BackgroundImage ; si l'image assignée à la propriété BackgroundImage est plus petite que le formulaire, elle sera disposée en mosaïque par défaut.
Propriété Moveable
Dans Visual Basic 6.0, la propriété Moveable d'un formulaire peut avoir la valeur False pour empêcher qu'un utilisateur ne déplace le formulaire au moment de l'exécution. Dans Visual Basic 2008, les Windows Forms ne possèdent pas de propriété équivalente.
Bien qu'une telle conception d'interface ne soit généralement pas considérée acceptable, vous pouvez parvenir à un comportement similaire dans Visual Basic 2008 en affectant à la propriété FormBorderStyle la valeur None et à la propriété ControlBox la valeur False.
Méthode ValidateControls
Dans Visual Basic 6.0, la méthode ValidateControls est utilisée pour forcer l'événement Validate du contrôle qui a le focus lors de la fermeture d'un formulaire ; si l'événement Validate échoue, une erreur est déclenchée.
Dans Visual Basic 2008, la méthode ValidateControls est remplacée par la méthode Validate, qui retourne True ou False.
Événements de souris pour les formulaires MDI
Dans Visual Basic 6.0, les formulaires MDI prennent 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.
Modifications apportées au code de l'objet Form
Les exemples ci-dessous illustrent les différences entre les techniques de codage dans Visual Basic 6.0 et dans Visual Basic 2008.
Modifications du code de détermination de la raison de la fermeture d'un formulaire
Le code suivant peut vous aider à déterminer la raison de la fermeture d'un formulaire, puis comment agir selon la raison. Dans l'exemple Visual Basic 6.0, l'argument UnloadMode de l'événement QueryUnload est utilisé. Dans l'exemple Visual Basic 2008, l'argument est remplacé par le paramètre CloseReason dans le gestionnaire d'événements FormClosing.
' Visual Basic 6.0
Private Sub Form_QueryUnload(Cancel As Integer, UnloadMode As Integer)
If UnloadMode = vbFormControlMenu Then
Cancel = True
End If
End Sub
' Visual Basic
Private Sub Form1_FormClosing(ByVal sender As System.Object, _
ByVal e As System.Windows.Forms.FormClosingEventArgs) Handles _
MyBase.FormClosing
If e.CloseReason.UserClosing Then
e.Cancel = True
End If
End Sub
Modifications du code de validation d'un contrôle à la fermeture d'un formulaire
Le code suivant montre comment forcer la validation du contrôle qui a le focus à la fermeture du formulaire. Cet exemple suppose que la propriété CausesValidation du contrôle TextBox a la valeur par défaut True.
' Visual Basic 6.0
Private Sub Text1_Validate(Cancel As Boolean)
If Text1.Text = "" Then
MsgBox ("Please enter a name")
Cancel = True
End If
Private Sub Form_Unload(Cancel As Integer)
OnError GoTo ERR_HANDLER
Me.ValidateControls
ERR_HANDLER:
' If validation failed cancel the Unload event.
If Err.Number = 380 Then
Cancel = True
End If
End Sub
' Visual Basic
Private Sub TextBox1_Validating(ByVal sender As Object, ByVal e As _
System.ComponentModel.CancelEventArgs) Handles TextBox1.Validating
If TextBox1.Text = "" Then
MsgBox("Please enter a name")
e.Cancel = True
End If
End Sub
Private Sub Form1_FormClosing(ByVal sender As System.Object, ByVal e _
As System.Windows.Forms.FormClosingEventArgs) Handles _
MyBase.FormClosing
' If validation failed cancel the Closing event.
If Me.Validate = False Then
e.Cancel = True
End If
End Sub
Équivalences des propriétés, méthodes et événements de l'objet Form
Les tableaux ci-dessous répertorient les propriétés, les méthodes et les événements de Visual Basic 6.0, ainsi que leurs propriétés dans Visual Basic 2008. Ces propriétés, méthodes et événements qui ont les mêmes nom et comportement ne sont pas répertoriés. Lorsque des constantes s'appliquent, elles sont présentées en retrait sous le nom de la propriété ou de la méthode. Sauf indication contraire, toutes les énumérations Visual Basic 2008 sont mappées à l'espace de noms System.Windows.Forms.
Le cas échéant, des liens vous renvoient vers des rubriques expliquant les différences de comportement. Lorsqu'il n'existe pas d'équivalent direct dans Visual Basic 2008, des liens vous renvoient vers des rubriques proposant des alternatives.
Propriétés de l'objet Form
Visual Basic 6.0 |
Équivalent Visual Basic 2008 |
||
---|---|---|---|
Appearance |
Nouvelle implémentation. Pour plus d'informations, consultez Propriétés Appearance et BorderStyle pour les utilisateurs de Visual Basic 6.0. |
||
AutoRedraw |
Nouvelle implémentation. Pour plus d'informations, consultez Éléments graphiques pour les utilisateurs de Visual Basic 6.0. |
||
BackColor |
|
||
BorderStyle |
|||
Caption |
|||
ClipControls |
Nouvelle implémentation. Pour plus d'informations, consultez Éléments graphiques pour les utilisateurs de Visual Basic 6.0. |
||
Controls |
|
||
Count |
|
||
CurrentX CurrentY |
Nouvelle implémentation. Pour plus d'informations, consultez Éléments graphiques pour les utilisateurs de Visual Basic 6.0. |
||
DrawMode DrawStyle DrawWidth |
Nouvelle implémentation. Pour plus d'informations, consultez Éléments graphiques pour les utilisateurs de Visual Basic 6.0. |
||
FillColor FillStyle |
Nouvelle implémentation. Pour plus d'informations, consultez Éléments graphiques pour les utilisateurs de Visual Basic 6.0. |
||
Font FontBold FontItalic FontName FontSize FontStrikethrough FontUnderline |
|
||
ForeColor |
|
||
HasDC |
Nouvelle implémentation. Pour plus d'informations, consultez Éléments graphiques pour les utilisateurs de Visual Basic 6.0. |
||
HDC |
Nouvelle implémentation. Pour plus d'informations, consultez Éléments graphiques pour les utilisateurs de Visual Basic 6.0. |
||
Height |
|
||
HelpContextID |
Nouvelle implémentation. Pour plus d'informations, consultez Prise en charge de l'aide pour les utilisateurs de Visual Basic 6.0. |
||
HWnd |
|||
Image |
Nouvelle implémentation. Dans Visual Basic 6.0, la propriété Image retournait un handle de bitmap ; dans Visual Basic 2008, les images n'ont pas de handles. |
||
Left |
|
||
LinkMode LinkTopic |
Pas d'équivalent. Pour plus d'informations, consultez Échange dynamique de données pour les utilisateurs de Visual Basic 6.0. |
||
MaxButton |
|||
MDIChild |
|
||
MinButton |
|||
MouseIcon |
Nouvelle implémentation. Pour plus d'informations, consultez Impossible de définir un pointeur de souris personnalisé. |
||
MousePointer |
Pour obtenir la liste des constantes, consultez MousePointer pour les utilisateurs de Visual Basic 6.0. |
||
Moveable |
Nouvelle implémentation. Pour plus d'informations, consultez Propriété Moveable pour les utilisateurs de Visual Basic 6.0. |
||
Name |
|||
NegotiateMenus |
Nouvelle implémentation. Pour plus d'informations, consultez Objet Menu pour les utilisateurs de Visual Basic 6.0. |
||
OLEDropMode |
Nouvelle implémentation. Pour plus d'informations, consultez Fonction de glisser-déplacer pour les utilisateurs de Visual Basic 6.0. |
||
Palette PaletteMode |
Nouvelle implémentation. Pour plus d'informations, consultez Palettes pour les utilisateurs de Visual Basic 6.0. |
||
Picture |
|
||
RightToLeft: True False |
Valeur d'énumération Yes |
||
ScaleHeight ScaleLeft ScaleMode ScaleTop ScaleWidth |
Nouvelle implémentation. Pour plus d'informations, consultez Système de coordonnées pour les utilisateurs de Visual Basic 6.0. |
||
StartUpPosition: 0 – Manual 1 – CenterOwner 2 – CenterScreen 3 – Windows Default |
Valeur d'énumération Manual Valeur d'énumération CenterParent Valeur d'énumération CenterScreen Valeur d'énumération WindowsDefaultLocation |
||
Top |
|
||
WhatsThisButton |
|
||
WhatsThisHelp |
Nouvelle implémentation. Pour plus d'informations, consultez Prise en charge de l'aide pour les utilisateurs de Visual Basic 6.0. |
||
Width |
|
Méthodes de l'objet Form
Visual Basic 6.0 |
Équivalent Visual Basic 2008 |
||
---|---|---|---|
Circle |
Nouvelle implémentation. Pour plus d'informations, consultez Éléments graphiques pour les utilisateurs de Visual Basic 6.0. |
||
Cls |
Nouvelle implémentation. Pour plus d'informations, consultez Éléments graphiques pour les utilisateurs de Visual Basic 6.0. |
||
Line |
Nouvelle implémentation. Pour plus d'informations, consultez Éléments graphiques pour les utilisateurs de Visual Basic 6.0. |
||
Move |
|
||
OLEDrag |
Nouvelle implémentation. Pour plus d'informations, consultez Fonction de glisser-déplacer pour les utilisateurs de Visual Basic 6.0. |
||
PaintPicture |
Nouvelle implémentation. Pour plus d'informations, consultez Éléments graphiques pour les utilisateurs de Visual Basic 6.0. |
||
Point |
Nouvelle implémentation. Pour plus d'informations, consultez Éléments graphiques pour les utilisateurs de Visual Basic 6.0. |
||
PopupMenu |
Nouvelle implémentation. Pour plus d'informations, consultez Objet Menu pour les utilisateurs de Visual Basic 6.0. |
||
PrintForm |
Nouvelle implémentation. Pour plus d'informations, consultez Modifications de l'impression pour les utilisateurs de Visual Basic 6.0. |
||
Pset |
Nouvelle implémentation. Pour plus d'informations, consultez Éléments graphiques pour les utilisateurs de Visual Basic 6.0. |
||
Scale ScaleX ScaleY |
Nouvelle implémentation. Pour plus d'informations, consultez Système de coordonnées pour les utilisateurs de Visual Basic 6.0. |
||
SetFocus |
|||
Show |
Show ou ShowDialog |
||
TextHeight |
Nouvelle implémentation. Pour plus d'informations, consultez Éléments graphiques pour les utilisateurs de Visual Basic 6.0. |
||
TextWidth |
Nouvelle implémentation. Pour plus d'informations, consultez Éléments graphiques pour les utilisateurs de Visual Basic 6.0. |
||
ValidateControls |
|
||
WhatsThisMode |
Nouvelle implémentation. Pour plus d'informations, consultez Prise en charge de l'aide pour les utilisateurs de Visual Basic 6.0. |
||
ZOrder: 0 – vbBringToFront 1 - vbSendToBack |
Fonction BringToFront ou SendToBack |
Événements de l'objet Form
Visual Basic 6.0 |
Équivalent Visual Basic 2008 |
||
---|---|---|---|
Activate |
|
||
Click |
|
||
DblClick |
|||
Deactivate |
|
||
DragDrop DragOver |
Nouvelle implémentation. Pour plus d'informations, consultez Fonction de glisser-déplacer pour les utilisateurs de Visual Basic 6.0. |
||
GotFocus |
|||
Initialize |
Méthode New
|
||
LinkClose LinkError LinkExecute LinkOpen |
Pas d'équivalent. Pour plus d'informations, consultez Échange dynamique de données pour les utilisateurs de Visual Basic 6.0. |
||
MouseDown |
|
||
MouseMove |
|
||
MouseUp |
|
||
OLECompleteDrag OLEDragDrop OLEDragOver OLEGiveFeedback OLESetData OLEStartDrag |
Nouvelle implémentation. Pour plus d'informations, consultez Fonction de glisser-déplacer pour les utilisateurs de Visual Basic 6.0. |
||
QueryUnload |
|
||
Terminate |
Méthode Dispose
|
||
Unload |
|
Voir aussi
Concepts
Tâches des formulaires pour les utilisateurs de Visual Basic 6.0