Soyez le premier à donner votre avis sur cette source.
Snippet vu 3 197 fois - Téléchargée 68 fois
Private Declare Function GetTickCount Lib "kernel32" () As Long Option Explicit 'voilà les variables en question Dim Sens(1 To 3) As Boolean ' pour savoir si il faut ajouter ou soustraire Dim Valeur(1 To 3) As Integer Dim Increment(1 To 3) As Integer Dim Plage(1 To 3, 1 To 2) As Integer ' la plage : 1 to 3 pour les couleurs (R,V ou B) et 1 to 2 Pour le maximum et le Minimum de l'incrément Dim MaxValeur(1 To 3) As Integer 'les valeurs minimales et maximales des couleurs Dim MinValeur(1 To 3) As Integer Sub XWait(ByVal MilsecToWait As Long) Dim lngEndingTime As Long lngEndingTime = GetTickCount() + (MilsecToWait) Do While GetTickCount() < lngEndingTime DoEvents Loop End Sub Private Sub Command1_Click() Unload Me End End Sub Private Sub Form_DblClick() Select Case Me.WindowState Case vbMaximized Me.BorderStyle = 2 Me.WindowState = vbNormal Case vbNormal Me.BorderStyle = 0 Me.WindowState = vbMaximized End Select Command1.Move Me.Width - Command1.Width, Me.Height - Command1.Height End Sub Private Sub Form_Load() Me.Show 'ne pas oublier ça sinon la feuille ne s'affiche pas à cause de la boucle qui suit Command1.Move Me.Width - Command1.Width, Me.Height - Command1.Height Dim i For i = 1 To 3 Plage(i, 1) = 0 Plage(i, 2) = 2 MaxValeur(i) = 255 MinValeur(i) = 0 Next Do Coloriser XWait 10 DoEvents Loop End Sub Sub Coloriser() On Error GoTo erreur: Me.BackColor = RGB(Valeur(1), Valeur(2), Valeur(3)) Randomize Timer Dim i For i = 1 To 3 Increment(i) = ((Plage(i, 2) - Plage(i, 1)) * Rnd) + Plage(i, 1) Select Case Sens(i) Case True If Valeur(i) + Increment(i) <= MaxValeur(i) Then Valeur(i) = Valeur(i) + Increment(i) Else Valeur(i) = MaxValeur(i) Sens(i) = False End If Case False If Valeur(i) - Increment(i) >= MinValeur(i) Then Valeur(i) = Valeur(i) - Increment(i) Else Valeur(i) = MinValeur(i) Sens(i) = True End If End Select DoEvents Next i erreur: If Err.Number <> 0 Then MsgBox "Une erreur de type " & Err.Number & " est apparue à " & Time & " dans le module " & Err.Source & vbCrLf & "Description : " & vbCrLf & " " & Err.Description & vbCrLf & vbCrLf & "Pour consulter l'aide relative à cette erreur, allez dans " & Err.HelpFile & " (ce chemin sera enregistré dans le presse-papier)" & vbCrLf & vbCrLf & "L'application va se terminer", vbCritical, "ERREUR" Clipboard.Clear Clipboard.SetText Err.HelpFile If Err.Number = 5 Then MsgBox "Conseil : " & vbCrLf & "Il est probable que la Valeur Minimale d'une plage de couleur soit négative." & vbCrLf & "Ce qui entraînera systèmatiquement cette erreur (" & Err.Description & ")" & vbCrLf & "Pour remédier à ça, changez toutes les Valeurs Minimales en valeurs positives.", vbInformation, "Conseil" End End If End Sub Private Sub Form_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single) If X >= Me.Width - Command1.Width And Y >= Me.Height - Command1.Height Then Command1.Visible = True Else Command1.Visible = False End If End Sub Private Sub Form_Terminate() End End Sub Private Sub Form_Unload(Cancel As Integer) End End Sub
9 mars 2001 à 19:03
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.