Ce code permet à votre contrôle de changer de couleur de fond (BackColor) ou de texte(ForeColore) progressivement ... Faut le voir pour croire ... ;-)
Je vais l'utiliser prochainemet ds un contrôle ActiveX ki sera publié sur notre site préféré.
Source / Exemple :
'=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
' J'ai créé ce petit programme après minuit lorseque
' j'ai eu l'idée ... je vous promet une mise à jour
' révisée & bien commenté très bientot ..
' Golden-X
'=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
Option Explicit
Const MaxRouge = 255
Const MaxVert = 255
Const MaxBleu = 255
Const MinRouge = 0
Const MinVert = 0
Const MinBleu = 0
Dim Rouge, Vert, Bleu As Integer
Dim RougeBas, VertBas, BleuBas As Boolean
Private Sub CmdGoStop_Click()
Timer1.Enabled = Not Timer1.Enabled
End Sub
Private Sub CmdInit_Click()
Form_Load
End Sub
Private Sub CmdQuitter_Click()
Dim Rep As VbMsgBoxResult
Rep = MsgBox("Vous êtes sûr de vouloir quitter ?", vbYesNo + vbQuestion, "Quitter")
If Rep = vbYes Then
Unload Me
frmLogoCode.Show
' Remplacez ces deux lignes par End ds votre code.
End If
End Sub
Private Sub Form_Load()
Randomize Timer
Rouge = Int(Rnd * (MaxRouge - MinRouge)) + MinRouge
Vert = Int(Rnd * (MaxVert - MinVert)) + MinVert
Bleu = Int(Rnd * (MaxBleu - MinBleu)) + MinBleu
'Rouge = 128
'Vert = 0
'Bleu = 128
RougeBas = CBool(Int(Rnd * 2) - 1)
VertBas = CBool(Int(Rnd * 2) - 1)
BleuBas = CBool(Int(Rnd * 2) - 1)
'RougeBas = False
'VertBas = False
'BleuBas = False
Timer1.Tag = Timer1.Interval
Timer1.Interval = 1
Timer1.Interval = Timer1.Tag
End Sub
Private Sub Timer1_Timer()
If RougeBas Then
If Rouge > MinRouge Then Rouge = Rouge - 1
Else
If Rouge < MaxRouge Then Rouge = Rouge + 1
End If
If VertBas Then
If Vert > MinVert Then Vert = Vert - 1
Else
If Vert < MaxVert Then Vert = Vert + 1
End If
If BleuBas Then
If Bleu > MinBleu Then Bleu = Bleu - 1
Else
If Bleu < MaxBleu Then Bleu = Bleu + 1
End If
If Rouge = MinRouge Or Rouge = MaxRouge Then RougeBas = Not RougeBas
If Vert = MinVert Or Vert = MaxVert Then VertBas = Not VertBas
If Bleu = MinBleu Or Bleu = MaxBleu Then BleuBas = Not BleuBas
lblColor.BackColor = RGB(Rouge, Vert, Bleu)
lblColor.ForeColor = RGB(255 - Rouge, 255 - Vert, 255 - Bleu)
lblRGBFond = "Couleur fond = RGB(" & Rouge & ", " & Vert & ", " & Bleu & ")"
lblRGBFond.BackColor = lblColor.BackColor
lblRGBText = "Couleur text = RGB(" & 255 - Rouge & ", " & 255 - Vert & ", " & 255 - Bleu & ")"
lblRGBText.BackColor = lblColor.ForeColor
' (255 * 3) / 2 = 382,5
If Rouge + Vert + Bleu < 383 Then
lblRGBFond.ForeColor = vbWhite
lblRGBText.ForeColor = vbBlack
Else
lblRGBFond.ForeColor = vbBlack
lblRGBText.ForeColor = vbWhite
End If
End Sub
'=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
' FIN
'=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
Conclusion :
J'ai créé ce petit programme après minuit lorseque j'ai eu l'idée ... je vous promet une mise à jour révisée & bien commenté très bientot ..
Golden-X
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.