Couleur bouton VB6

Résolu
Bonjour,
je veux changer la couleur d'un bouton lorsque la souris passe sur le bouton
j'utilise vb6
merci
Configuration: Windows XP
Firefox 3.0.15

11 réponses

  1. Change la propriété Style du bouton en Graphical

    sur l'évènement MouseMove du bouton, affecte la valeur d'un couleur à la propriété BackColor.

    Exemple :

    Private Sub Command1_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
          Command1.BackColor = vbRed
    End Sub
    
    0
    1. Salut,

      Testes ce code s'il te convient

      Private Sub CommandButton1_MouseMove(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
      If X < 10 Or X > CommandButton1.Width - 10 Or Y < 10 Or Y > CommandButton1.Height - 10 Then
      CommandButton1.BackColor = &H8000000F
      Else
      CommandButton1.BackColor = &HFF&
      End If
      End Sub
      0
      1. Mike-31 : merci pr la reponse mais j'ai une erreur sur cette ligne
        If X < 10 Or X > CommandButton1.Width - 10 Or Y < 10 Or Y > CommandButton1.Height - 10

        c'est quoi le 10 que ta mis là moi jai width =1275 et heigth=240

        xranto merciii mai ca reste tjr la mm color
        0
        1. quand la souris dépasse le bouton ça reste toujours la même couleur snif tu quel qu'un peut m'aider
          0
          1. Le problème avec VB6 c'est que les évènements MouseEnter et MouseLeave n'existent pas. On doit donc se contenter de MouseMove.

            J'ai essayé le code de Mike-31 et ca marche bien. Tu ne doit pas oublier que dans son code, le nom du bouton est CommandButton1.

            Le problème aussi est que la valeur 10 est trop petit que quand le pointeur passe vite, l'évènement n'est pas déclenchée. Tu peux essayer avec 100, ça fonctionne mieux.
            0
            1. re mes amis merci bcp ça marche très bien !
              merci mike-31
              merci xranto
              0
              1. bjr
                SVP je fait quoi si j'ai vb 2005?
                0
                1. > marwa580
                  Tu peux utiliser le code suivant en VB 2005:

                  Private Sub Button1_MouseEnter(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button1.MouseEnter
                          Button1.BackColor = Color.Red
                  End Sub
                  
                  Private Sub Button1_MouseLeave(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button1.MouseLeave
                          Button1.BackColor = SystemColors.Control
                  End Sub
                  0
                  1. j'utilise vb2005
                    0
                2. Pas mal l'idée je garde de coté pour mon programme merci
                  0