IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Framework .NET Discussion :

Quel controle pour faire une courbe temp réel ?


Sujet :

Framework .NET

  1. #1
    Membre du Club
    Inscrit en
    Octobre 2005
    Messages
    71
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 71
    Points : 45
    Points
    45
    Par défaut Quel controle pour faire une courbe temp réel ?
    Bonjour,
    Pouvez vous me dire quel est le controle utilisé pour les courbes du gestionnaire de tache windows ?


  2. #2
    Membre confirmé Avatar de MetalGeek
    Profil pro
    Inscrit en
    Octobre 2008
    Messages
    412
    Détails du profil
    Informations personnelles :
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Octobre 2008
    Messages : 412
    Points : 513
    Points
    513
    Par défaut
    Salut,

    c'est sûrement du C++, sûrement fait sur mesure (tapez moi si je dis une connerie).

    Sinon avec WPF y'a moyen de faire des trucs assez bluffants niveau courbiers, même pour du temps réel. Tu as des librairies déjà faites sur CodeProject entre autres (va sur le site CodeProject et cherche avec "chart" ou "charting" comme mot-clé).

  3. #3
    Rédacteur
    Avatar de Louis-Guillaume Morand
    Homme Profil pro
    Cloud Architect
    Inscrit en
    Mars 2003
    Messages
    10 839
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Cloud Architect
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2003
    Messages : 10 839
    Points : 28 252
    Points
    28 252
    Par défaut
    je l'avais fait dans mes tout premiers projets, c'est simplement une image, et tu fais grphic.DrawLine(), et tu dessines, tiret après tiret. reste plus qu'à gérer le décalage.
    moi c'est Louis-Guillaume, ni Louis, ni Guillaume mais Louis-Guillaume et je n'aide pas ceux qui écorchent mon nom

  4. #4
    Membre du Club
    Inscrit en
    Octobre 2005
    Messages
    71
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 71
    Points : 45
    Points
    45
    Par défaut
    Bon j'ai pas trouver exactement ce que je voulais du codeproject donc, j'ai fini par faire le mien et ca marche plutot bien je trouve. Voici ma classe :

    Code VB : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    Imports System.ComponentModel
     
    Public Class controlegraph
        Private tableau(3600) As Integer
        Private hauteur_controle As Integer
        Private largeur_controle As Integer
        Private _Zoom As Integer
        Private _Offset As Integer
        Private _Pas As Integer
        Private _Max As Integer
        Private _Min As Integer
        Private Y As Integer
        Private X As Integer
        Private graphics As Graphics
        Private image As Bitmap
        Private police As Object
     
     
     
     
     
        Public Property Offset() As Integer
            Get
                Return _Offset
            End Get
            Set(ByVal Value As Integer)
                _Offset = Value
            End Set
        End Property
     
     
        Public Property Pas() As Integer
            Get
                Return _Pas
            End Get
            Set(ByVal Value As Integer)
                _Pas = Value
            End Set
        End Property
     
     
        Public Property Zoom() As Integer
            Get
                Return _Zoom
            End Get
            Set(ByVal Value As Integer)
                _Zoom = Value
            End Set
        End Property
     
     
     
     
     
        Public Sub Updt(ByVal V As Integer)
     
            Dim H As Integer = hauteur_controle
            Y = hauteur_controle + Zoom * Offset - V * Zoom
            graphics.Clear(Color.White)
            tableau(X) = Y
     
            Do Until H < 0
                H = H - Pas * Zoom
                graphics.DrawLine(Pens.Gray, largeur_controle, H, 0, H) 'trace la ligne
                graphics.DrawString((hauteur_controle + Zoom * Offset - H) / Zoom, police, Brushes.Blue, 0, H - 12)
            Loop
     
            For P As Integer = 0 To largeur_controle - 1   'on trace les lignes formant la courbe
     
                If tableau(largeur_controle - P - 1) <> 0 Then 'on ne trace pas si il n'y a pas de valeur
                    graphics.DrawLine(Pens.Blue, P, tableau(largeur_controle - P), P + 1, tableau(largeur_controle - P - 1))
                End If
            Next P
     
            If X = 0 Then 'la courbe arrive au bout du graph, alors decalage du tableau vers la gauche, 
                Array.Copy(tableau, 0, tableau, 1, 3599) 'on remonte les données, on decalle vers la gauche le graphe
            Else          'on ne decalle pas le tableau
                X = X - 1
            End If
            'enregistrement des images
            PictureBox.Image = image    'on mets l'image temp dans la picturebox
        End Sub
     
     
        Public Sub Init()
            largeur_controle = Me.Width
            hauteur_controle = Me.Height
            'Array.Resize(tableau, largeur)
            image = New Bitmap(PictureBox.Width, PictureBox.Height) 'on créer l'image a mettre dans la picturebox
            graphics = graphics.FromImage(image)
     
            police = New Font("arial", 10, FontStyle.Regular, GraphicsUnit.Pixel)
            X = largeur_controle
        End Sub
     
     
        Public Sub New()
            InitializeComponent()
        End Sub
     
    End Class

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Quel CMS pour faire une FAQ avec label
    Par vasilov dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 2
    Dernier message: 08/01/2014, 16h57
  2. [Avis] Quel langage pour faire une GUI pour un pgm Fortran ?
    Par Radagast dans le forum Langages de programmation
    Réponses: 15
    Dernier message: 24/02/2011, 12h28
  3. [XL-2007] quel code pour faire une annonce a l'ouverture du fichier
    Par grisan29 dans le forum Macros et VBA Excel
    Réponses: 5
    Dernier message: 16/07/2010, 20h26
  4. Réponses: 34
    Dernier message: 20/04/2010, 00h34
  5. Quel langage pour faire une application Windows et web ?
    Par tipiweb dans le forum Langages de programmation
    Réponses: 7
    Dernier message: 30/07/2007, 13h10

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo