Couleurs prog

Soyez le premier à donner votre avis sur cette source.

Vue 3 892 fois - Téléchargée 232 fois

Description

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

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.