Bon voilà j'ai fais, comme tu me l'a dis, un mini-projet que vous pourrez prendre ici : http://kcin.ath.cx/FTP/FFXI.zip, avec seulement les MDI mère et fille.
- La MDI mère contient une pictureBox accompagnée d'une image.
- La pictureBox a les propriétés autoredraw et autosize en true. Et il y a un code qui modifie le height de celle-ci en cas ou la MDI mère serait redimensionner.
- Quant à l'image, elle a la propriété Stretch à true.
Code MDI Mère :
Option Explicit
Private Sub MDIForm_Resize()
Dim HeightPict As Integer
Dim WidthPict As Integer
Dim HeightImage As Integer
Dim WidthImage As Integer
'Redimensionne la Picture1 à la taille de la MDI mère
'Permet de laisser l'image centrer dans la picture box
Picture1.Height = MainFrame.Height
WidthPict = Picture1.Width / 2
HeightPict = Picture1.Height / 2
WidthImage = Image1.Width / 2
HeightImage = Image1.Height / 2
Image1.Left = WidthPict - WidthImage
Image1.Top = HeightPict - HeightImage * 1.5
End Sub
Private Sub Sub_Connecter_Click()
Connexion.Show
End Sub
Private Sub Sub_Quitter_Click()
Unload Me
End Sub
- La MDI fille a plein de contrôles comme boutons et j'en passe, car le problème se situe plus avec la MDI mère.
-J'ai donc réussi à garder mon image centrer lorsque l'utilisateur redimensionne la MDI mère, mais lorsque que l'on veut ouvrir la MDI fille, elle n'apparaît pas ou plutot reste cacher derriere la pictureBox.
Code MDI fille :
Private Sub CmdConnexionValider_Click()
Dim pMyErrorMsg As Long, myErrorMsg As String
pMySQL = mysql_init(0)
If TextConnexion1 <> "" And TextConnexion2 <> "" Then
If mysql_real_connect(pMySQL, "", TextConnexion1, TextConnexion2, "test", 3306, "", 0) = 0 Then
'Récupère le message d'erreur MySQL et l'affiche dans une msgbox
pMyErrorMsg = mysql_error(pMySQL)
myErrorMsg = CopieChaine(pMyErrorMsg)
MsgBox myErrorMsg, vbCritical, "Connexion"
Else
MsgBox "Connexion établie avec succès.", vbInformation, "Connexion"
MainFrame.Sub_Connecter.Enabled = False
MainFrame.Sub_Connecter.Visible = False
MainFrame.Sub_Deconnecter.Visible = True
MainFrame.Sub_Deconnecter.Enabled = True
MainFrame.Menu_Inventaire.Enabled = True
MainFrame.Menu_Equipement.Enabled = True
Unload Connexion
End If
Else
MsgBox "Vous avez oublié de remplir un champs !!"
End If
End Sub
Private Sub CmdConnexionAnnuler_Click()
Unload Connexion
End Sub
Private Sub Form_Load()
Dim HeightPict As Integer
Dim WidthPict As Integer
Dim HeightImage As Integer
Dim WidthImage As Integer
WidthPict = MainFrame.Width / 2
HeightPict = MainFrame.Height / 2
WidthImage = Connexion.Width / 2
HeightImage = Connexion.Height / 2
Connexion.Left = WidthPict - WidthImage
Connexion.Top = HeightPict - HeightImage * 1.5
End Sub
Donc j'aimerais savoir comment faire pour que ma MDI fille apparaisse devant la pictureBox

Merci
Kcin