Graphique de valeurs (vertical avec max et min)

Soyez le premier à donner votre avis sur cette source.

Vue 3 928 fois - Téléchargée 425 fois

Description

afficher des valeurs sous forme graphique

Source / Exemple :


Private Sub UserControl_Initialize()
newzero = 0
  lignzero.Y1 = 2535 + 360
  lignzero.Y2 = 2535 + 360
  Label1.Top = 2535 - 255 + 360
min.Visible = False
max.Visible = False
 min.Caption = 10000
 max.Caption = -10000
End Sub

Sub maj()

Select Case col
Case 0
 couleur = vbBlack '&H0 Black
Case 1
  couleur = vbRed '&HFF Red
Case 2
  couleur = vbGreen '&HFF00 Green
Case 3
  couleur = vbYellow '&HFFFF Yellow
Case 4
  couleur = vbBlue '&HFF0000 Blue
Case 5
  couleur = vbMagenta '&HFF00FF Magenta
Case 6
  couleur = vbCyan '&HFFFF00 Cyan
Case 7
  couleur = vbWhite '&HFFFFFF White
'Case 8
' couleur = vbInactiveBorder
End Select
valeurC.BackColor = couleur
 Label2.Caption = grad
x = Abs(valeurt)
If dep <> 0 Then
Label1.Caption = dep
new1.Caption = dep
haut = 2535 '+ 360
    If dep < 0 Then
       unité = (haut) / (grad + Abs(0 - dep))
    Else
       unité = (haut) / (grad - dep)
       x = Abs((grad - valeurt) - (grad - dep))
    End If
'
Else
haut = 2535
unité = (haut) / grad
End If
If dep < 0 Then
       new1.Visible = True
       new1.Top = 2535 + 360
End If
If dep < 0 Then

  lignzero.Y1 = haut - (Abs(dep) * unité) + 360
  lignzero.Y2 = haut - (Abs(dep) * unité) + 360
  Label1.Top = haut - (Abs(dep) * unité) - 255 + 360
  Label1.Caption = 0
  If valeurt < 0 Then
     valeurN.Visible = True
     valeurC.Visible = False
     valeurN.Top = lignzero.Y1
     valeurN.Height = x * unité
  Else
     valeurN.Visible = False
     valeurC.Visible = True
  End If
  Else
       valeurN.Visible = False
       valeurC.Visible = True
End If
newzero = lignzero.Y1
    If newzero <> 0 Then
     haut = 0
    End If
    valeurC.Top = Abs((haut - newzero)) - (x * unité)
    valeurC.Height = x * unité

    If valeurC.Visible = True Then
    actu.Top = valeurC.Top
    actu.Caption = valeurt
      If (CSng(max.Caption)) < (CSng(actu.Caption)) Then
        max.Top = valeurC.Top - 255
        max.Caption = valeurt
        valmax.Y1 = valeurC.Top
        valmax.Y2 = valeurC.Top
       End If
    Else
    actu.Top = valeurN.Top + valeurN.Height
    actu.Caption = valeurt
       If (CSng(max.Caption)) < (CSng(actu.Caption)) Then
        max.Top = valeurC.Top + valeurN.Height + 255
        max.Caption = valeurt
        valmax.Y1 = valeurN.Top + valeurN.Height
        valmax.Y2 = valeurN.Top + valeurN.Height
       End If

    End If
    
    If valeurC.Visible = True Then

      If ((CSng(min.Caption)) > (CSng(actu.Caption))) Then
        min.Top = valeurC.Top - 255
        min.Caption = valeurt
        valmin.Y1 = valeurC.Top
        valmin.Y2 = valeurC.Top
      End If
    Else
      If (CSng(min.Caption)) > (CSng(actu.Caption)) Then
        min.Top = valeurN.Top + valeurN.Height
        min.Caption = valeurt
        valmin.Y1 = valeurN.Top + valeurN.Height + 15
        valmin.Y2 = valeurN.Top + valeurN.Height + 15
      End If
    End If
If min.Caption <> grad Then min.Visible = True

max.Visible = True
suit:

End Sub
Sub ecritmaxmin()
Label1.Caption = dep
Label2.Caption = grad

End Sub

Codes Sources

A voir également

Ajouter un commentaire

Commentaires

ryanryan1970
Messages postés
7
Date d'inscription
samedi 27 mai 2006
Statut
Membre
Dernière intervention
15 mars 2009
-
Un exemple avec une form aurait été plus pratique !
merci
ryanryan1970
Messages postés
7
Date d'inscription
samedi 27 mai 2006
Statut
Membre
Dernière intervention
15 mars 2009
-
ecoute c est un bon control , mais une fois utiliser ds mon application , il donne rien
voila :
Private Sub Command1_Click()
Me.graph1.col = 6
Me.graph1.dep = 0
Me.graph1.grad = 100
Me.graph1.valeurt = 50

End Sub
il marche pas.
corrige moi svp.
merci
Galactus13
Messages postés
326
Date d'inscription
lundi 29 septembre 2008
Statut
Membre
Dernière intervention
27 juillet 2019
1 -
Un exemple avec une form aurait été plus pratique !
car malgrès des essais, sa marche pô chez moi !!!
ryanryan1970
Messages postés
7
Date d'inscription
samedi 27 mai 2006
Statut
Membre
Dernière intervention
15 mars 2009
-
est ce que tu peux expliquer en plus de details svp
kml404
Messages postés
55
Date d'inscription
dimanche 20 juillet 2008
Statut
Membre
Dernière intervention
10 octobre 2015
-
comment ça???

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.