Fond de form animé (selon votre sens artistique)

Description

C'est juste un petit travail de debutante pour agrémenter les fonds de form, je pense que beaucoup d'entre vous vont se moquer de moi mais je suis contente du resultat, je le montre ici afin que vous me donniez vos critiques et surtout vos conseils car je dois reconnaitre que j'ai toujours reçu de l'aide quans j'ai posé une question dans le forum

Sinon j'ai tout expliqué dans la source, beaucoup oui, mais c'est pour les debutantes comme moi car parfois on ne comprend pas bien pourquoi ceci et cela alors moi j'ai ecris pour la clareté.

Source / Exemple :


'Pour faire cette source, vous avez besoin:

            ' 1 form nomé frm1
            ' 3 boutons (2 avec index només cmd et 1 nomé cmdFin).
            ' 3 pictureBox (2 avec index nomées picImage et 1 nomée picCadre.
            ' 1 timer nomé tmr1 (interval 1  et enabled = true).
            
'Contitution du Form
            'Pour bien faire il doit être de la taille de l'image que vous souhaitez.
            'Pour le Form BorderStyle sur 0-None dans proprietés
            'Vous positionez sur votre Form une pictureBox qui fera la taille de votre form.
            'vous positionez dans la pictureBox une autre PictureBox (de la meme taille)
            'Vous mettez votre image à Picture les proprietés de la pictureBox nouvelle)
            'Vous positionnez une autre pictureBox, toujours de même taille et avec la même image (ou une autre) à droite de la pictureBox précédente.
            'Pour être claire, 1 picture avec la proprieté left à 0 et l'autre left = la largeur de l'image -2 pixels.
            'Vous posé les trois boutons cmd(0) et (1) et cmdFin en bas du form1.
            ' Et voilà c'est tout  vous copier le reste qui suit dans le Form et c'est fini .
            
            
            'Maintenant passons au code lui  même :
            
' Tout d'abord il faut déclarer les variables qui seront utilisées sur tout le Form "frm1.

Option Explicit

' Deux variables Vit1 pour la vitesse de d'entrée en milliseconde et Vit2 pour le chevauchement de l'image en Pixels.
Dim Vit1 As Integer  'Integer car ce sont des nombres
Dim Vit2 As Integer
    

Private Sub cmd_Click(Index As Integer)
' Ces boutons sont placés en bas du form1,
' Ils sont indexés 0 et 1 comme cela il n'y a pas a écrire deux fois les codes.
    
' Declaration de la variable Temps pour la durée des entrées et des sorties.
    Dim Temps As Integer 'Integer car ce sont des nombres
    

Lig1: ' là c'est un repère, il aurait pu s'appeller truc ou  machin
' c'est au cas ou vous entrez un mauvais nombre, on revient ici.

    Select Case Index ' Choix de l'index du bouton.
        ' si l'index est 0 alors on fait le code...
        Case 0
            'Envoi d'un MsgBox pour demander la vitesse desirée
            Temps = Val(InputBox("Vitesse en millisecondes:", "Vitesse de balayage", Vit1)) '<-- c'est ici que rente en action la variable Vit1
            ' Evidemment si rien est entrée on sort et on fait rien.
            If (Temps = 0) Then Exit Sub
            ' Maintenant on controle si la vitesse ne depasse pas le compteur.
            If (Temps < 1) Or (Temps > 1000) Then
                ' Et si ca depasse on envoi un nouveau MsgBox.
                MsgBox "Aucune vitesse superieure a 1000 milliseconds  Merci!. Recommencez votre choix.", vbOKOnly Or vbCritical, "Mauvaise vitesse"
                ' vbOKOnly Or vbCritical c'est pour la croix et le son "bomp" personnellement j'aime bien car ca fait toujours peur !!!
                ' mais vous pouvez les  modifier
                ' Bref,  à la fin on retourne au debut grace a Goto et au repere Lig1 .
                GoTo Lig1
            End If 'Fin de la condition
            ' On affecte à notre variable de depart Vit1 la variable Temps rentré par vous.
            Vit1 = Temps
        ' Maintenant on passe au cas ou l'index du bouton est 1.
        Case 1
            ' Je reexplique pas car c'est la copie des lignes du dessus.
            Temps = Val(InputBox("Vitesse de Chevauchement des Images en pixels:", "Chevauchement des images l'une sur l'autre", Vit2))
            If (Temps = 0) Then Exit Sub
            If (Temps < 1) Or (Temps > 10) Then
                ' Juste une remarque ici, 10 est la valeur maxi a mon goût mais vous pouvez changer.
                MsgBox "La vitesse de chevauchement doit-etre comprise entre 1 et 10 pixels. Recommencer votre Choix.", vbOKOnly Or vbCritical, "Temps de Chevauchement invalide"
                ' Go to the label.
                GoTo Lig1
            End If
            Vit2 = Temps
    End Select 'fin de la condition de selection
End Sub

Private Sub cmdFin_Click()
    ' Ce bouton est mis juste pour fermer le form car j'ai retiré la croix de fermeture dans les propriété du form.
    Unload Me 'Cmd Vb6
End Sub

Private Sub Form_Load()
    ' Valeur par default des Millisecondes.
    Vit1 = 1
    ' Valeur par default des pixel.
    Vit2 = 2
End Sub

Private Sub picImage_Click(Index As Integer)
'Ici c'est les deux pictureBox indexés 0 et 1.
End Sub

Private Sub tmr1_Timer()
    ' On regle l'interval du timer tmr1 avec la variable du dessus par default.
    tmr1.Interval = Vit1
    
    ' Deplacement de l'image1 qui ce nome picImage(1)
    picImage(1).Left = picImage(1).Left - (Vit2 * Screen.TwipsPerPixelX)
    ' Maintenant on bouge l'image 0 qui ce nome picImage (0)
    picImage(0).Left = picImage(0).Left - (Vit2 * Screen.TwipsPerPixelX)
    ' On bouge d'abord l'image 1 afin de creer un simili fondu
    ' Si l'image 0 est totalement sortie du cadre image, alors on la replace à sa position initiale.
    If picImage(0).Left < -(picImage(0).Width) Then
        ' l' image1 passe à droite de l'image 0 (position au double de la valeur de position gauche de l'image 0
        picImage(0).Left = picImage(1).Left + picImage(1).Width
    End If 'fin de la condition
    
    ' Si la deuxieme image à fini de passer, on la renvoi de nouveau à son origine.
    If picImage(1).Left < -(picImage(1).Width) Then
        ' Idem que l'autre, on la remet à droite de l'image.
        picImage(1).Left = picImage(0).Left + picImage(0).Width
    End If
End Sub

Conclusion :


Normalement ca marche bien moi je suis en VB6 et mon pc est pas tout neuf (petit moyen) c'est ma premiere source alors ne riez pas pas.

je met un zip qui contient 2 images et une capture Les images sont de WorldGraph
et j'espere que la capture est bonne

J'ai mis ca dans trucs et astuces car y'a pas la categorie "Testez moi"

Codes Sources

A voir également

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.