Contrôle PictureBox pour les utilisateurs de Visual Basic 6.0
Mise à jour : novembre 2007
Le contrôle PictureBox de Visual Basic 6.0 est remplacé par le contrôle Windows Forms PictureBox 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
PictureBox comme conteneur
Le contrôle PictureBox dans Visual Basic 6.0 est un contrôle conteneur ; en plus d'afficher des images, il peut être utilisé pour grouper et afficher d'autres contrôles.
Le contrôle Visual Basic 2008PictureBox n'est pas un contrôle conteneur ; il est utilisé uniquement pour afficher des images. Vous pouvez utiliser le nouveau contrôle Panel en remplacement du contrôle PictureBox lorsque vous avez besoin d'un contrôle conteneur.
AutoSize, propriété
Dans Visual Basic 6.0, la propriété AutoSize détermine si un contrôle PictureBox conserve sa taille au moment du design (AutoSize = False) ou est redimensionné dynamiquement pour s'ajuster aux dimensions de l'image (AutoSize = True).
Dans Visual Basic 2008, la propriété AutoSize est remplacée par la propriété SizeMode ; outre les modes Normal et AutoSize, des options sont également disponibles pour centrer, étirer ou effectuer un zoom sur l'image.
Propriétés et méthodes graphiques
Dans Visual Basic 6.0, plusieurs propriétés et méthodes graphiques permettent de dessiner des lignes, des formes et du texte dans la partie supérieure d'un contrôle PictureBox.
Dans Visual Basic 2008, les contrôles n'ont plus de propriétés ou de méthodes graphiques ; vous pouvez encore dessiner dans la partie supérieure d'un contrôle PictureBox à l'aide d'un objet T:System.Drawing.Graphics. Pour plus d'informations, consultez Éléments graphiques pour les utilisateurs de Visual Basic 6.0.
Autres différences
De plus, de nombreuses différences conceptuelles s'appliquent à tous les contrôles, y compris des différences relatives à la liaison de données, la gestion des polices, la fonctionnalité glisser-déplacer, la prise en charge de l'aide, etc. Pour plus d'informations, consultez Concepts Windows Forms pour les utilisateurs de Visual Basic 6.0.
Modifications du code pour le contrôle PictureBox
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 pour afficher une image
Le code suivant illustre comment afficher une image dans un contrôle PictureBox au moment de l'exécution.
' Visual Basic 6.0
Picture1.Picture = LoadPicture(App.Path & "\somepicture.jpg")
' Visual Basic
PictureBox1.Image = System.Drawing.Bitmap.FromFile( _
My.Application.Info.DirectoryPath & "\somepicture.jpg")
Modifications du code pour effacer un contrôle PictureBox
Le code suivant illustre comment effacer un contrôle PictureBox au moment de l'exécution afin qu'aucune image ne soit affichée.
' Visual Basic 6.0
Picture1.Picture = LoadPicture("")
' Visual Basic
If Not (PictureBox1.Image Is Nothing) Then
PictureBox1.Image.Dispose()
PictureBox1.Image = Nothing
End If
Modifications du code pour dessiner sur un contrôle PictureBox
Le code suivant illustre comment dessiner un cercle rouge de 40 pixels de diamètre au centre d'un contrôle PictureBox au moment de l'exécution.
' Visual Basic 6.0
Private Sub Picture1_Paint
Dim x As Integer
Dim y As Integer
Picture1.ScaleMode = vbPixels
x = Picture1.ScaleWidth / 2
y = Picture1.ScaleHeight / 2
Picture1.Circle (x, y), 20, vbRed
End Sub
' Visual Basic
Private Sub PictureBox1_Paint(ByVal sender As Object, ByVal e _
As System.Windows.Forms.PaintEventArgs) Handles PictureBox1.Paint
Dim radius As Integer = 20
Dim diameter As Integer = radius * 2
Dim x As Integer = (PictureBox1.Width / 2) - radius
Dim y As Integer = (PictureBox1.Height / 2) - radius
e.Graphics.DrawEllipse(Pens.Red, x, y, diameter, diameter)
End Sub
Équivalences des propriétés, méthodes et événements du contrôle PictureBox
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 équivalents 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.
Ce tableau fournit des liens vers les rubriques qui expliquent des 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
Visual Basic 6.0 |
Équivalent Visual Basic 2008 |
||
---|---|---|---|
Align |
|||
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. |
||
AutoSize |
|||
BackColor |
|
||
BorderStyle |
|
||
ClipControls |
Nouvelle implémentation. Pour plus d'informations, consultez Éléments graphiques pour les utilisateurs de Visual Basic 6.0. |
||
Container |
|||
CurrentX CurrentY |
Nouvelle implémentation. Pour plus d'informations, consultez Éléments graphiques pour les utilisateurs de Visual Basic 6.0. |
||
DataChanged DataField DataFormat DataMember DataSource |
Nouvelle implémentation. Pour plus d'informations, consultez Accès aux données pour les utilisateurs de Visual Basic 6.0. |
||
DragIcon DragMode |
Nouvelle implémentation. Pour plus d'informations, consultez Fonction de glisser-déplacer pour les utilisateurs de Visual Basic 6.0. |
||
DrawMode DrawStyle DrawWidth 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 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. Pour plus d'informations, consultez Éléments graphiques pour les utilisateurs de Visual Basic 6.0.
|
||
Index |
Nouvelle implémentation. Pour plus d'informations, consultez Tableaux de contrôles pour les utilisateurs de Visual Basic 6.0. |
||
Left |
|
||
LinkItem LinkMode LinkTimeOut LinkTopic |
Pas d'équivalent. Pour plus d'informations, consultez Échange dynamique de données pour les utilisateurs de Visual Basic 6.0. |
||
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. |
||
OLEDragMode OLEDropMode |
Nouvelle implémentation. Pour plus d'informations, consultez Fonction de glisser-déplacer pour les utilisateurs de Visual Basic 6.0. |
||
Parent |
|||
Picture |
|||
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. |
||
ToolTipText |
Composant ToolTip Pour plus d'informations, consultez Prise en charge des info-bulles pour les utilisateurs de Visual Basic 6.0. |
||
Top |
|
||
WhatsThisHelpID |
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
Visual Basic 6.0 |
Équivalent Visual Basic 2008 |
||
---|---|---|---|
Circle Cls |
Nouvelle implémentation. Pour plus d'informations, consultez Éléments graphiques pour les utilisateurs de Visual Basic 6.0. |
||
Drag |
Nouvelle implémentation. Pour plus d'informations, consultez Fonction de glisser-déplacer 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. |
||
LinkExecute LinkPoke LinkRequest LinkSend |
Pas d'équivalent. Pour plus d'informations, consultez Échange dynamique de données 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 Point 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 |
|||
ShowWhatsThis |
Nouvelle implémentation. Pour plus d'informations, consultez Prise en charge de l'aide pour les utilisateurs de Visual Basic 6.0. |
||
TextHeight TextWidth |
Nouvelle implémentation. Pour plus d'informations, consultez Éléments graphiques pour les utilisateurs de Visual Basic 6.0. |
||
ZOrder |
Méthode BringToFront ou SendToBack |
Événements
Visual Basic 6.0 |
Équivalent Visual Basic 2008 |
---|---|
Change |
Nouvelle implémentation. Il existe des événements (BackgroundImageChanged, SizeChanged, etc.) qui sont déclenchés lorsque des propriétés sont modifiées. |
DblClick |
|
DragDrop DragOver |
Nouvelle implémentation. Pour plus d'informations, consultez Fonction de glisser-déplacer pour les utilisateurs de Visual Basic 6.0. |
GotFocus |
|
KeyDown KeyPress KeyUp |
Nouvelle implémentation. Le contrôle Visual Basic 2008PictureBox n'est pas un contrôle conteneur et ne reçoit pas de séquences de touches. |
LinkClose LinkError LinkNotify LinkOpen |
Pas d'équivalent. Pour plus d'informations, consultez Échange dynamique de données pour les utilisateurs de Visual Basic 6.0. |
LostFocus |
|
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. |
Validate |
Mettre à niveau des remarques
Lors de la mise à niveau, les contrôles PictureBox qui contiennent des contrôles sont mis à niveau avec des contrôles Panel. Dans Visual Basic 6.0, les contrôles PictureBox qui ont été mis à niveau avec les contrôles Panel, les images assignées à la propriété Picture sont mappées à la propriété BackgroundPicture du contrôle Panel.