begin process at 2010 02 09 20:36:09
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

Graphique

 > FOND DE FEUILLE ANIMÉ : DÉGRADÉ MOUVANT POUR ABOUT OU SPLASHSCREEN

FOND DE FEUILLE ANIMÉ : DÉGRADÉ MOUVANT POUR ABOUT OU SPLASHSCREEN


 Information sur la source

Note :
9,6 / 10 - par 5 personnes
9,60 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10
Catégorie :Graphique Source .NET ( DotNet ) Classé sous :degradé, effet, fond, feuille, mouvant Niveau :Initié Date de création :01/07/2007 Date de mise à jour :02/07/2007 00:29:43 Vu / téléchargé :11 664 / 885

Auteur : hvb

Ecrire un message privé
Site perso
Ce membre participe au partage de revenus publicitaires
Commentaire sur cette source (13)
Ajouter un commentaire et/ou une note


 Description

Cliquez pour voir la capture en taille normale
Hello tout le monde,
hier je m'amusait à chercher comment rendre mes moches applis un peu plus attractives, et je me suis renseigné sur les dégradés gerés par le framework .net (merci Richard Clark).
C'est en bidouillant un peu avec que je suis arrivé à ce resultat assez simpa. Des degradés mouvants!
Vous spécifiez deux couleur et un type de degradé, et la classe se charge de redessiner en permance la feuille.
Le plus interessant est je pense, celui en "diagonale", mais les verticaux et horizontaux font aussi leur petit effet.
J'ai donc tenter de rendre mon code générique en écrivant une petit classe très simple à utiliser.
La méthode en elle même est, comme je l'ai dit, une bidouille.
En effet, je ne travaille pas sur le fond de la feuille, mais sur un label de la taille de la feuille, ajouté en arrière plan.
Ceci du fait qu'en travaillant sur la feuille elle même, le form_paint est appelé en permanence, et produit un clignottement très désagréable.

Enfin, je precise dans le titre "pour about ou splashscreen", car ce petit effet de cowboy est gourmand en ressources,
à eviter donc sur une vraie appli ^^

Deux classes donc ici, la première, destiné à mettre en fond une image dégradé sur un control, et l'autre qui se charge de l'effet mouvant.
J'ai également mis un petit sample dans le zip.

Have fun

Source

  • 'classe de dessin de degradés sur un controle
  • Public Class HbCtrlDegrad
  • Public Enum TypeDegrad
  • Horizontal
  • Vertical
  • Diagonale_avant
  • Diagonale_arriere
  • End Enum
  • Friend Shared Sub Degrade(ByRef ctrl As Control, ByVal startcolor As Color, ByVal endcolor As Color, ByVal type As TypeDegrad)
  • Degrade(ctrl, startcolor, endcolor, type, 0)
  • End Sub
  • Friend Shared Sub Degrade(ByRef ctrl As Control, ByVal startcolor As Color, ByVal endcolor As Color, ByVal angle As Single)
  • Degrade(ctrl, startcolor, endcolor, 5, angle)
  • End Sub
  • Friend Shared Sub Degrade(ByRef ctrl As Control, ByVal startcolor As Color, ByVal endcolor As Color, ByVal type As TypeDegrad, ByVal angle As Single, Optional ByVal width As Integer = -1, Optional ByVal height As Integer = -1)
  • If width = -1 Then width = ctrl.Width
  • If height = -1 Then height = ctrl.Height
  • Dim a As Image = New Bitmap(ctrl.Width, ctrl.Height)
  • Dim bgGraph As Graphics = Graphics.FromImage(a)
  • Dim rect As New Rectangle(New Point(0, 0), New Point(width, height))
  • Dim degradbrush As Drawing2D.LinearGradientBrush
  • Select Case type
  • Case TypeDegrad.Horizontal
  • degradbrush = New Drawing2D.LinearGradientBrush(rect, startcolor, endcolor, Drawing2D.LinearGradientMode.Horizontal)
  • Case TypeDegrad.Vertical
  • degradbrush = New Drawing2D.LinearGradientBrush(rect, startcolor, endcolor, Drawing2D.LinearGradientMode.Vertical)
  • Case TypeDegrad.Diagonale_avant
  • degradbrush = New Drawing2D.LinearGradientBrush(rect, startcolor, endcolor, Drawing2D.LinearGradientMode.ForwardDiagonal)
  • Case TypeDegrad.Diagonale_arriere
  • degradbrush = New Drawing2D.LinearGradientBrush(rect, startcolor, endcolor, Drawing2D.LinearGradientMode.BackwardDiagonal)
  • Case Else
  • degradbrush = New Drawing2D.LinearGradientBrush(rect, startcolor, endcolor, angle, True)
  • End Select
  • bgGraph.FillRectangle(degradbrush, rect)
  • ctrl.BackgroundImage = a
  • End Sub
  • End Class
  • 'classe de gestion de fond mouvant
  • Public Class RollingBG
  • Private b As Boolean
  • Private _interval As Integer
  • Private _startcolor As Color
  • Private _endcolor As Color
  • Private _curform As Form
  • Private _backlabel As Label = New Label
  • Private _angle As Single
  • Private thread1 As Threading.Thread
  • Public Enum TypeDegrad
  • Horizontal
  • Vertical
  • Diagonale
  • End Enum
  • Private Delegate Sub DelegateAddLabel(ByVal newlabel As Label)
  • Private Delegate Sub DelegateRemoveLabel(ByVal newlabel As Label)
  • Private Delegate Sub DelegateChangeBGColor(ByVal clr As Color)
  • Private Delegate Sub DelegateDegrade(ByRef ctrl As Control, ByVal startcolor As Color, ByVal endcolor As Color, ByVal angle As Single)
  • Private Delegate Sub DelegateDegradeHV(ByRef ctrl As Control, ByVal startcolor As Color, ByVal endcolor As Color, ByVal type As TypeDegrad, ByVal angle As Single, ByVal width As Integer, ByVal height As Integer)
  • Public Sub New()
  • _interval = 10
  • End Sub
  • Public Sub New(ByVal interval As Integer)
  • If interval > 0 Then
  • _interval = interval
  • Else
  • _interval = 10
  • End If
  • End Sub
  • Private Function newlabel(ByVal width As Single, ByVal height As Single) As Label
  • Dim newlbl As New Label
  • newlbl.Width = width
  • newlbl.Height = height
  • Return newlbl
  • End Function
  • Public Sub vertical(ByRef curform As Form, ByVal startcolor As Color, ByVal endcolor As Color)
  • start(curform, startcolor, endcolor, 2)
  • End Sub
  • Public Sub horizontal(ByRef curform As Form, ByVal startcolor As Color, ByVal endcolor As Color)
  • start(curform, startcolor, endcolor, 1)
  • End Sub
  • Public Sub diagonal(ByRef curform As Form, ByVal startcolor As Color, ByVal endcolor As Color)
  • start(curform, startcolor, endcolor, 0)
  • End Sub
  • Private Sub start(ByRef curform As Form, ByVal startcolor As Color, ByVal endcolor As Color, ByVal type As Integer)
  • pause()
  • Select Case type
  • Case 0
  • thread1 = New Threading.Thread(AddressOf diagonal_thread)
  • Case 1
  • thread1 = New Threading.Thread(AddressOf horizontal_thread)
  • Case 2
  • thread1 = New Threading.Thread(AddressOf vertical_thread)
  • End Select
  • 'pause()
  • b = True
  • _curform = curform
  • _startcolor = startcolor
  • _endcolor = endcolor
  • AddHandler _curform.FormClosing, AddressOf FormClosing
  • thread1.Start()
  • End Sub
  • Private Sub vertical_thread()
  • Dim descendant As Boolean = True
  • Dim i As Integer = 1
  • Dim max As Integer = _curform.Height + (_curform.Height / 4)
  • _curform.Invoke(New DelegateChangeBGColor(AddressOf changeBGcolor), New Object() {_endcolor})
  • _backlabel = newlabel(_curform.Width, _curform.Height)
  • _curform.Invoke(New DelegateAddLabel(AddressOf addlabel), New Object() {_backlabel})
  • Do While b = True
  • Do While (i < max) And (i >= 1)
  • If b = False Then Exit Do
  • _backlabel.Invoke(New DelegateDegradeHV(AddressOf DegradeA), New Object() {_backlabel, _startcolor, _endcolor, TypeDegrad.Vertical, 0, -1, i})
  • Threading.Thread.Sleep(_interval)
  • If descendant = True Then i += 1 Else i -= 1
  • Loop
  • descendant = Not descendant
  • If descendant = False Then i -= 1 Else i += 1
  • Loop
  • _curform.Invoke(New DelegateRemoveLabel(AddressOf removelabel), New Object() {_backlabel})
  • End Sub
  • Private Sub horizontal_thread()
  • Dim descendant As Boolean = True
  • Dim i As Integer = 1
  • Dim max As Integer = _curform.Width + (_curform.Width / 4)
  • _curform.Invoke(New DelegateChangeBGColor(AddressOf changeBGcolor), New Object() {_endcolor})
  • _backlabel = newlabel(_curform.Width, _curform.Height)
  • _curform.Invoke(New DelegateAddLabel(AddressOf addlabel), New Object() {_backlabel})
  • Do While b = True
  • Do While (i < max) And (i >= 1)
  • If b = False Then Exit Do
  • _backlabel.Invoke(New DelegateDegradeHV(AddressOf DegradeA), New Object() {_backlabel, _startcolor, _endcolor, TypeDegrad.Horizontal, 0, i, -1})
  • Threading.Thread.Sleep(_interval)
  • If descendant = True Then i += 1 Else i -= 1
  • Loop
  • descendant = Not descendant
  • If descendant = False Then i -= 1 Else i += 1
  • Loop
  • _curform.Invoke(New DelegateRemoveLabel(AddressOf removelabel), New Object() {_backlabel})
  • End Sub
  • Private Sub diagonal_thread()
  • _backlabel = newlabel(_curform.Width, _curform.Height)
  • _curform.Invoke(New DelegateAddLabel(AddressOf addlabel), New Object() {_backlabel})
  • Do While b
  • For i As Integer = 1 To 360
  • If b = False Then Exit For
  • If i Mod 90 = 0 Then i = i + 1 'evite le clignottement des angles "droits" (90,180,270)
  • _backlabel.Invoke(New DelegateDegrade(AddressOf DegradeB), New Object() {CType(_backlabel, Control), _startcolor, _endcolor, i})
  • Threading.Thread.Sleep(_interval)
  • Next
  • Loop
  • _curform.Invoke(New DelegateRemoveLabel(AddressOf removelabel), New Object() {_backlabel})
  • End Sub
  • 'event ajouté à la form
  • Private Sub FormClosing(ByVal sender As Object, ByVal e As System.Windows.Forms.FormClosingEventArgs)
  • pause()
  • End Sub
  • Public Sub pause()
  • b = False
  • If Not IsNothing(thread1) Then
  • thread1.Abort()
  • removelabel(_backlabel)
  • End If
  • End Sub
  • 'Sub deleguées
  • Private Sub addlabel(ByVal newlabel As Label)
  • _curform.Controls.Add(newlabel)
  • End Sub
  • Private Sub removelabel(ByVal newlabel As Label)
  • _curform.Controls.Remove(newlabel)
  • End Sub
  • Private Sub changeBGcolor(ByVal clr As Color)
  • _curform.BackColor = clr
  • End Sub
  • Private Sub DegradeA(ByRef ctrl As Control, ByVal startcolor As Color, ByVal endcolor As Color, ByVal type As TypeDegrad, ByVal angle As Single, ByVal width As Integer, ByVal height As Integer)
  • If b = True Then
  • HbCtrlDegrad.Degrade(ctrl, startcolor, endcolor, type, 0, width, height)
  • End If
  • End Sub
  • Private Sub DegradeB(ByRef ctrl As Control, ByVal startcolor As Color, ByVal endcolor As Color, ByVal angle As Single)
  • If b = True Then
  • HbCtrlDegrad.Degrade(ctrl, startcolor, endcolor, 5, angle)
  • End If
  • End Sub
  • End Class
'classe de dessin de degradés sur un controle

Public Class HbCtrlDegrad

    Public Enum TypeDegrad
        Horizontal
        Vertical
        Diagonale_avant
        Diagonale_arriere
    End Enum

    Friend Shared Sub Degrade(ByRef ctrl As Control, ByVal startcolor As Color, ByVal endcolor As Color, ByVal type As TypeDegrad)
        Degrade(ctrl, startcolor, endcolor, type, 0)
    End Sub

    Friend Shared Sub Degrade(ByRef ctrl As Control, ByVal startcolor As Color, ByVal endcolor As Color, ByVal angle As Single)
        Degrade(ctrl, startcolor, endcolor, 5, angle)
    End Sub

    Friend Shared Sub Degrade(ByRef ctrl As Control, ByVal startcolor As Color, ByVal endcolor As Color, ByVal type As TypeDegrad, ByVal angle As Single, Optional ByVal width As Integer = -1, Optional ByVal height As Integer = -1)
        If width = -1 Then width = ctrl.Width
        If height = -1 Then height = ctrl.Height
        Dim a As Image = New Bitmap(ctrl.Width, ctrl.Height)
        Dim bgGraph As Graphics = Graphics.FromImage(a)
        Dim rect As New Rectangle(New Point(0, 0), New Point(width, height))
        Dim degradbrush As Drawing2D.LinearGradientBrush
        Select Case type
            Case TypeDegrad.Horizontal
                degradbrush = New Drawing2D.LinearGradientBrush(rect, startcolor, endcolor, Drawing2D.LinearGradientMode.Horizontal)
            Case TypeDegrad.Vertical
                degradbrush = New Drawing2D.LinearGradientBrush(rect, startcolor, endcolor, Drawing2D.LinearGradientMode.Vertical)
            Case TypeDegrad.Diagonale_avant
                degradbrush = New Drawing2D.LinearGradientBrush(rect, startcolor, endcolor, Drawing2D.LinearGradientMode.ForwardDiagonal)
            Case TypeDegrad.Diagonale_arriere
                degradbrush = New Drawing2D.LinearGradientBrush(rect, startcolor, endcolor, Drawing2D.LinearGradientMode.BackwardDiagonal)
            Case Else
                degradbrush = New Drawing2D.LinearGradientBrush(rect, startcolor, endcolor, angle, True)
        End Select
        bgGraph.FillRectangle(degradbrush, rect)
        ctrl.BackgroundImage = a
    End Sub

End Class


'classe de gestion de fond mouvant 

Public Class RollingBG

    Private b As Boolean
    Private _interval As Integer
    Private _startcolor As Color
    Private _endcolor As Color
    Private _curform As Form
    Private _backlabel As Label = New Label
    Private _angle As Single
    Private thread1 As Threading.Thread

    Public Enum TypeDegrad
        Horizontal
        Vertical
        Diagonale
    End Enum

    Private Delegate Sub DelegateAddLabel(ByVal newlabel As Label)
    Private Delegate Sub DelegateRemoveLabel(ByVal newlabel As Label)
    Private Delegate Sub DelegateChangeBGColor(ByVal clr As Color)
    Private Delegate Sub DelegateDegrade(ByRef ctrl As Control, ByVal startcolor As Color, ByVal endcolor As Color, ByVal angle As Single)
    Private Delegate Sub DelegateDegradeHV(ByRef ctrl As Control, ByVal startcolor As Color, ByVal endcolor As Color, ByVal type As TypeDegrad, ByVal angle As Single, ByVal width As Integer, ByVal height As Integer)


    Public Sub New()
        _interval = 10
    End Sub


    Public Sub New(ByVal interval As Integer)
        If interval > 0 Then
            _interval = interval
        Else
            _interval = 10
        End If
    End Sub


    Private Function newlabel(ByVal width As Single, ByVal height As Single) As Label
        Dim newlbl As New Label
        newlbl.Width = width
        newlbl.Height = height
        Return newlbl
    End Function

    Public Sub vertical(ByRef curform As Form, ByVal startcolor As Color, ByVal endcolor As Color)
        start(curform, startcolor, endcolor, 2)
    End Sub

    Public Sub horizontal(ByRef curform As Form, ByVal startcolor As Color, ByVal endcolor As Color)
        start(curform, startcolor, endcolor, 1)
    End Sub

    Public Sub diagonal(ByRef curform As Form, ByVal startcolor As Color, ByVal endcolor As Color)
        start(curform, startcolor, endcolor, 0)
    End Sub

    Private Sub start(ByRef curform As Form, ByVal startcolor As Color, ByVal endcolor As Color, ByVal type As Integer)
        pause()
        Select Case type
            Case 0
                thread1 = New Threading.Thread(AddressOf diagonal_thread)
            Case 1
                thread1 = New Threading.Thread(AddressOf horizontal_thread)
            Case 2
                thread1 = New Threading.Thread(AddressOf vertical_thread)
        End Select
        'pause()
        b = True
        _curform = curform
        _startcolor = startcolor
        _endcolor = endcolor
        AddHandler _curform.FormClosing, AddressOf FormClosing
        thread1.Start()
    End Sub

    Private Sub vertical_thread()
        Dim descendant As Boolean = True
        Dim i As Integer = 1
        Dim max As Integer = _curform.Height + (_curform.Height / 4)
        _curform.Invoke(New DelegateChangeBGColor(AddressOf changeBGcolor), New Object() {_endcolor})
        _backlabel = newlabel(_curform.Width, _curform.Height)
        _curform.Invoke(New DelegateAddLabel(AddressOf addlabel), New Object() {_backlabel})
        Do While b = True
            Do While (i < max) And (i >= 1)
                If b = False Then Exit Do
                _backlabel.Invoke(New DelegateDegradeHV(AddressOf DegradeA), New Object() {_backlabel, _startcolor, _endcolor, TypeDegrad.Vertical, 0, -1, i})
                Threading.Thread.Sleep(_interval)
                If descendant = True Then i += 1 Else i -= 1
            Loop
            descendant = Not descendant
            If descendant = False Then i -= 1 Else i += 1
        Loop
        _curform.Invoke(New DelegateRemoveLabel(AddressOf removelabel), New Object() {_backlabel})
    End Sub


    Private Sub horizontal_thread()
        Dim descendant As Boolean = True
        Dim i As Integer = 1
        Dim max As Integer = _curform.Width + (_curform.Width / 4)
        _curform.Invoke(New DelegateChangeBGColor(AddressOf changeBGcolor), New Object() {_endcolor})
        _backlabel = newlabel(_curform.Width, _curform.Height)
        _curform.Invoke(New DelegateAddLabel(AddressOf addlabel), New Object() {_backlabel})
        Do While b = True
            Do While (i < max) And (i >= 1)
                If b = False Then Exit Do
                _backlabel.Invoke(New DelegateDegradeHV(AddressOf DegradeA), New Object() {_backlabel, _startcolor, _endcolor, TypeDegrad.Horizontal, 0, i, -1})
                Threading.Thread.Sleep(_interval)
                If descendant = True Then i += 1 Else i -= 1
            Loop
            descendant = Not descendant
            If descendant = False Then i -= 1 Else i += 1
        Loop
        _curform.Invoke(New DelegateRemoveLabel(AddressOf removelabel), New Object() {_backlabel})

    End Sub

    Private Sub diagonal_thread()
        _backlabel = newlabel(_curform.Width, _curform.Height)
        _curform.Invoke(New DelegateAddLabel(AddressOf addlabel), New Object() {_backlabel})
        Do While b
            For i As Integer = 1 To 360
                If b = False Then Exit For
                If i Mod 90 = 0 Then i = i + 1 'evite le clignottement des angles "droits" (90,180,270)
                _backlabel.Invoke(New DelegateDegrade(AddressOf DegradeB), New Object() {CType(_backlabel, Control), _startcolor, _endcolor, i})
                Threading.Thread.Sleep(_interval)
            Next
        Loop
        _curform.Invoke(New DelegateRemoveLabel(AddressOf removelabel), New Object() {_backlabel})
    End Sub

    'event ajouté à la form 
    Private Sub FormClosing(ByVal sender As Object, ByVal e As System.Windows.Forms.FormClosingEventArgs)
        pause()
    End Sub

    Public Sub pause()
        b = False
        If Not IsNothing(thread1) Then
            thread1.Abort()
            removelabel(_backlabel)
        End If
    End Sub

    'Sub deleguées
    Private Sub addlabel(ByVal newlabel As Label)
        _curform.Controls.Add(newlabel)
    End Sub

    Private Sub removelabel(ByVal newlabel As Label)
        _curform.Controls.Remove(newlabel)
    End Sub

    Private Sub changeBGcolor(ByVal clr As Color)
        _curform.BackColor = clr
    End Sub

    Private Sub DegradeA(ByRef ctrl As Control, ByVal startcolor As Color, ByVal endcolor As Color, ByVal type As TypeDegrad, ByVal angle As Single, ByVal width As Integer, ByVal height As Integer)
        If b = True Then
            HbCtrlDegrad.Degrade(ctrl, startcolor, endcolor, type, 0, width, height)
        End If
    End Sub

    Private Sub DegradeB(ByRef ctrl As Control, ByVal startcolor As Color, ByVal endcolor As Color, ByVal angle As Single)
        If b = True Then
            HbCtrlDegrad.Degrade(ctrl, startcolor, endcolor, 5, angle)
        End If
    End Sub

End Class

 Conclusion

J'ai presque honte de perdre du temps la dessus, mais bon... ^^'
Je met niveau Initié, même si l'utilisation de la classe est simpliste, et que la partie algorithmique se resume à peu de ligne de code, le fait qu'elle implémente threads et autres delegués necessite je pense, ce niveau 2. Faites le moi savoir si vous pensez que je m'emballe ^^.

 Fichier Zip

Les Membres Club peuvent télécharger directement un fichier contenu dans le zip sans télécharger le zip en entier !

Télécharger le zip


 Historique

02 juillet 2007 00:29:43 :
correction du titre

 Sources du même auteur

Source avec Zip Source avec une capture Source .NET (Dotnet) FONT VIEWER : VISIONNEUSE DE POLICES SYSTEMES.
Source avec Zip Source avec une capture Source .NET (Dotnet) HBSNAPSHOTERV3.0 : GESTIONNAIRE DE CAPTURES D'ÉCRAN
Source avec Zip Source avec une capture Source .NET (Dotnet) JEU : PICROSS OU "PUZZLE JAPONAIS"
Source avec Zip Source .NET (Dotnet) [.NET2] COMPRESSION/DÉCOMPRESSION GZIP DE FICHIER GRÂCE À IO...
Source avec Zip Source .NET (Dotnet) [.NET2] CLASSE DE TÉLÉCHARGEMENT HTTP AVEC GESTION DE RESUME...

 Sources de la même categorie

Source avec Zip ALBUM PHOTOS par ayoube2009
Source avec Zip Source avec une capture EDITEUR D'AUTOMATES CELLULAIRES par PADYVEN
Source avec Zip Source avec une capture PROGRAMME DE DESSIN À LA SOURIS AVEC OUVERTURE ET ENREGISTRE... par SnkVrt
Source avec Zip Source avec une capture Source .NET (Dotnet) PHOTOSEXPRESS - TRAITEMENT DE PHOTOS par zozo14
Source avec Zip Source avec une capture ÉCRIRE SUR LE WALLPAPER par Rafale71

 Sources en rapport avec celle ci

Source avec Zip Source avec une capture ÔTER PROTECTION FEUILLE D'UN CLASSEUR EXCEL & TROUVER MOT D... par stef68600
Source avec Zip Source avec une capture IMAGES ET EFFETS HLSL / SHADERS DIRECTX 9 par BumpMANN
Source avec Zip Source avec une capture EFFET GLASS SUR LA TOUTE SURFACE DE LA FENETRE par wtor
POPUPPIC par vbbreizh
EFFETS DE COULEUR DANS UNE FEUILLE (NOUVELLE VERSION) par Whiterabbit83

Commentaires et avis

Commentaire de guiguidu25 le 01/07/2007 22:18:20

oui pas mal du tout je trouve

Commentaire de Elxior le 02/07/2007 03:14:39

Rien à redire, c'est parfait comme code.
10/10.

Commentaire de Elxior le 02/07/2007 03:16:16

Ah, dans cette ligne :
If descendant = True Then i += 1 Else i -= 1
Je sais pas si je me trompe, mais c'est pas plus rapide de mettre If descendant Then ... ?

Commentaire de hvb le 02/07/2007 09:37:37

effectivement le "= true" est facultatif à écrire, mais je ne suis pas sur que cela soit réelement plus rapide une fois compilé, le gain de temps serait de toutes façons minime (1µs? ^^)

Merci pour les commentaires en tout cas :)

Commentaire de swan94 le 02/07/2007 16:35:59

Salut,

Terrible ta source. Vraiment utile pour tout ceux désireux de mettre au point des applications qui se démarquent de part leur design.
Vu le niveau que tu semble avoir il faudrai que tu nous fasses des tutos ;) voire même sur la création d'objets (boutons, panels...)

Merci et bonne continuations.

Commentaire de OneHacker le 02/07/2007 19:59:39

Pas mal, euh je suis en train d'arranger mon emulateur de voiture et mon controle tachymètre a le même problème de clignotement. Je sais que quelqu'un avec fait la meme chose que toi je vais essayer de retrouver sa source pour savoir comment éviter ce problème de scintillement personellement j'ai mis la propriété du formulaire DoubleBuffered à True mais ça ne change rien.

Commentaire de hvb le 03/07/2007 17:35:54

merci pour le commentaire, Swan94
OneHacker : "it's my liiiiiife" ^^

Commentaire de swan94 le 04/07/2007 10:29:17

Salut,

Je n'arrive pas à faire que le fond de mes controles tels des labels ou groupbox soient transparents avec ta source en fond et ce, même avec la couleur transparente sur ces controles.

Aurais-tu une solution ?

Merci

Commentaire de hvb le 04/07/2007 12:19:25

rah, *$¤%§# d'erreur 500, j'avais écris tout un roman... tant pis.
En résumé, j'ai detecté le problème, je pense avoir une solution, je testerais ce soir de chez moi, je suis au boulot pour l'instant.

Have fun

Commentaire de XelectroX le 30/10/2007 10:20:22

Pauvre mémoire :s
http://www.imagehosting.com/out.php/i1314504_tmp.jpg -> Va voir ;)

Et quand on anime avec le délai 10, mon processeur passe à 80%

Commentaire de hvb le 30/10/2007 11:18:37

oui, comme je l'ai dit :
"Enfin, je precise dans le titre "pour about ou splashscreen", car ce petit effet de cowboy est gourmand en ressources,
à eviter donc sur une vraie appli ^^"

ça reste un juste un délire ^^

Commentaire de Elxior le 10/11/2007 23:16:49

"effectivement le "= true" est facultatif à écrire, mais je ne suis pas sur que cela soit réelement plus rapide une fois compilé, le gain de temps serait de toutes façons minime (1µs? ^^)"

http://www.c2i.fr/code.aspx?IDCode=377

Sans le = true, c'est 2x plus rapide à l'exécution ;).

Commentaire de gillardg le 10/05/2008 14:54:59 10/10

ça c'est urile
c'est sympa
bravo

 Ajouter un commentaire


Discussions en rapport avec ce code source dans le forum

Faire défiler le fond de la feuille et tout les controles avec [ par Viny ] Je cherche une solution pour faire défiler le fond de la feuille avec tous les controles qui se trouve dessus afin de gagner de la place dans ma feuil Insérer une image de fond sous excel [ par spoggio ] Alors question tout con :Je sais insérer une image de fond sur une feuille Excel.....mais le problème c'est que je voudrai que ce cher Excel ne me la mettre au demarrage de la feuille une image en fond [ par pcman5 ] Je voudrais que la feuille a une image de fond situer dans un repertoire predefini:Voici ce que j'ai fait mais ca marche pas:Form1.Image = App.Path & image dans feuille vb [ par voyageurvoyageur ] débutant en vb 6 je cherche à mettre en fond d'une feuille une image.j'ai téléchargé un fond d'écran mais je n'arrive pas à la dimensionner pour quell FOND FEUILLE EXCEL [ par Marathon Man ] Bonjour,Je ne sais pas si c'est u code vba mais je voudrais savoir comment on rendle fond de la feuille blanche en enlevant le quadriallageMerci par a fond en couleurs degradé winform vb2005 [ par wardavb ] bonjour je cherche les commandes qui permettent d'avoir un back color degradé sur les winforms Pour info j'avais essayé ca a l'epoque d'apres une web garder une feuille en fond d'ecran [ par Roussetj ] bonjour,voici ma question, j'ai realisé un programme qui interagit avec plusieurs classeurs.Pdt que mon programme effectue les actions et les calculs Cration d'un effet sut l'image de fond. [ par DraaFil ] Bonjour à tous,J'aurais besoin de vous pour m'aider à faire, ou bien à enligner, mes recherches.Je m'explique j'ai une form qui s'affiche au centre de image en mosaique ? [ par Brodeur ] Salut a tous ! Merci a ceux qui m'ont repondu precedement. Mon pb est le suivant: je voudrais mettre une image de fond dans ma feuille (form) mais le Pour une feuille MDI comment centrer l'image de fond? [ par Moussetique ] salutJ'ai un soft realisé en mdi et la fenetre méres (la principale) permet d'afficher une image en fond.Comment centrer cette image dynamiquement.C'e


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,655 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales