Donovan309
Messages postés15Date d'inscriptiondimanche 21 octobre 2018StatutMembreDernière intervention 7 novembre 2018
-
23 oct. 2018 à 21:37
NHenry
Messages postés15069Date d'inscriptionvendredi 14 mars 2003StatutModérateurDernière intervention29 mai 2023
-
24 oct. 2018 à 20:35
Bonsoir, j'aimerai optimiser mon code je vous explique
J'ai fais un petit logiciel et le soucis c'est que les bouton de la form me plait pas trop donc j'ai voulu faire à ma manière, donc j'ai fais un panel, un label et une picturebox.
J'ai fais des événement pour que quand ont passe la souris sur le panel ça change la couleur de fond etc.. mais du coup j'ai du faire ça pour le label, et la picturebox faire pareille pour le click j'ai mis le code sur le label, la picturebox et le panel et du coup c'est pas très optimiser et j'aimerai savoir si il était possible de optimiser tout ça
Voici le code :
Private Sub Panel3_Click(sender As Object, e As EventArgs) Handles Panel3.Click
Dim sfd As New SaveFileDialog
sfd.Filter = "Image PNG|*.png|Image JPEG|*.jpg"
sfd.FileName = ""
sfd.Title = "Choisir une destination"
If sfd.ShowDialog = Windows.Forms.DialogResult.OK Then
PictureBox1.Image.Save(sfd.FileName)
End If
End Sub
Private Sub Label3_Click(sender As Object, e As EventArgs) Handles Label3.Click
Dim sfd As New SaveFileDialog
sfd.Filter = "Image PNG|*.png|Image JPEG|*.jpg"
sfd.FileName = ""
sfd.Title = "Choisir une destination"
If sfd.ShowDialog = Windows.Forms.DialogResult.OK Then
PictureBox1.Image.Save(sfd.FileName)
End If
End Sub
Private Sub PictureBox4_Click(sender As Object, e As EventArgs) Handles PictureBox4.Click
Dim sfd As New SaveFileDialog
sfd.Filter = "Image PNG|*.png|Image JPEG|*.jpg"
sfd.FileName = ""
sfd.Title = "Choisir une destination"
If sfd.ShowDialog = Windows.Forms.DialogResult.OK Then
PictureBox1.Image.Save(sfd.FileName)
End If
End Sub
Private Sub Panel3_MouseHover(sender As Object, e As EventArgs) Handles Panel3.MouseHover
Panel3.BackColor = Color.FromArgb(50, Color.SkyBlue)
End Sub
Private Sub Label3_MouseHover(sender As Object, e As EventArgs) Handles Label3.MouseHover
Panel3.BackColor = Color.FromArgb(50, Color.SkyBlue)
End Sub
Private Sub PictureBox4_MouseHover(sender As Object, e As EventArgs) Handles PictureBox4.MouseHover
Panel3.BackColor = Color.FromArgb(50, Color.SkyBlue)
End Sub
Private Sub Panel3_MouseLeave(sender As Object, e As EventArgs) Handles Panel3.MouseLeave
Panel3.BackColor = DefaultBackColor
End Sub
Private Sub Label3_MouseLeave(sender As Object, e As EventArgs) Handles Label3.MouseLeave
Panel3.BackColor = DefaultBackColor
End Sub
Private Sub PictureBox4_MouseLeave(sender As Object, e As EventArgs) Handles PictureBox4.MouseLeave
Panel3.BackColor = DefaultBackColor
End Sub
NHenry
Messages postés15069Date d'inscriptionvendredi 14 mars 2003StatutModérateurDernière intervention29 mai 2023158 23 oct. 2018 à 22:02
Regardes peut être pour faire un contrôle utilisateur, ce sera plus propre et réutilisable.
Sinon, la clause Handles peut prendre plusieurs cibles, si celle-ci on la même signature :
Private Sub ..._Click(...) Handles Controle1.Click, Controle2.Click, ...
Donovan309
Messages postés15Date d'inscriptiondimanche 21 octobre 2018StatutMembreDernière intervention 7 novembre 2018 23 oct. 2018 à 22:05
Comment ont fais un contrôle utilisateur ?
NHenry
Messages postés15069Date d'inscriptionvendredi 14 mars 2003StatutModérateurDernière intervention29 mai 2023158 24 oct. 2018 à 20:35
Un clic droit sur le projet -> Ajouter -> Contrôle utilisateur
Tu le créé (pose tes controles et le code) puis tu pourra l'insérer dans les autres forms et controles personnalisés.
23 oct. 2018 à 22:05
24 oct. 2018 à 20:35
Tu le créé (pose tes controles et le code) puis tu pourra l'insérer dans les autres forms et controles personnalisés.