begin process at 2012 02 10 23:15:16
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

Graphique

 > DIAGRAMME BATON

DIAGRAMME BATON


 Information sur la source

Note :
9 / 10 - par 4 personnes
9,00 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10
Catégorie :Graphique Source .NET ( DotNet ) Classé sous :Diagramme, Baton, UserControl, Graphics Niveau :Initié Date de création :10/10/2008 Date de mise à jour :03/03/2009 16:50:28 Vu / téléchargé :7 507 / 464

Auteur : lesdis

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


 Description

Cliquez pour voir la capture en taille normale
Pour les besoins d'un logiciel, il a fallu que je développe un diagramme en bâton et je tenais à le partager avec la communauté de codes-sources.

Pour le moment il n'y a pas de bug connu mais un soucis de montée en charge de la mémoire même si cela ne fait pas ralentir l'application.
Chez moi, cela peut monter jusqu'à 400Mo.

Toutes les remarques sont donc bonne a prendre pour améliorer ce petit control :)

Source

  • Tout est dans le zip
Tout est dans le zip


 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

10 octobre 2008 20:13:11 :
- Ajout du contour suivant l'idée de Redman31100. La valeur par défaut est nothing.
03 mars 2009 16:50:29 :
- Insertion du control dans un projet complet. Si vous avez un soucis d'affichage de la form, pensez a régénérer la solution.

 Sources du même auteur

Source avec une capture Source .NET (Dotnet) CONTROLE IMAGE ZOOM/DÉZOOM
Source avec Zip Source avec une capture Source .NET (Dotnet) DIAGRAMME CAMEMBERT
Source avec Zip Source avec une capture Source .NET (Dotnet) UTILISATION DU PORT COM VS2005

 Sources de la même categorie

Source avec une capture GRAPH PHP COURBE DE CHARGE par s.defaye
Source avec Zip Source avec une capture BOULE DE CRISTAL par BLUEBIBUBBLE
VB6 - DÉPLACEMENT D'UN CONTRÔLE SUR UN SEGMENT DE DROITE DÉL... par ucfoutu
Source avec Zip Source .NET (Dotnet) APPLICATION DE DESSIN par fsafsafsaf
Source avec Zip Source avec une capture Source .NET (Dotnet) MERGEIMAGES par Le Pivert

 Sources en rapport avec celle ci

Source avec une capture Source .NET (Dotnet) USER CONTROL POUR UN HISTOGRAMME À BARRES VERTICALES par tchconst
Source avec Zip Source avec une capture USERCONTROL IMAGE À PARTIR DE GDI+ par Flocreate
Source avec Zip Source avec une capture USERCONTROL AVEC PROPERTIES PERSONALISABLE par Polack77
Source avec Zip Source avec une capture Source .NET (Dotnet) MM CHECKBOX .NET V.2009 par Mayzz
Source avec Zip Source avec une capture Source .NET (Dotnet) DIAGRAMME CAMEMBERT par lesdis

Commentaires et avis

Commentaire de Redman31100 le 10/10/2008 16:34:08 10/10

Ton contrôle est super ! 10/10 !

Aucun bug, comme amélioration j'ai peut être une idée c'est de faire un contour noir a chaque baton(droit, haut, gauche seulement).

Commentaire de Redman31100 le 10/10/2008 17:09:59

dans le code du controle diagramme baton, j'ai modifié ceci :

Public Sub New()
        'Valeurs par défaut
        NumOrd = 25
        NumAbs = 70
        name_absc = ""
        name_ord = ""
        cBatonColor = Color.Lime

        InitializeComponent()

        FirstIndex = 1
        Unite_X = (Me.Width - 40) / NumAbs
        Unite_Y = (Me.Height - 40) / NumOrd

        'Tracé des axes
        Draw_Axe()

        'initialisation des valeurs à 5
        For x As Integer = 0 To NumAbs - 1
            Tab_Point(x) = 5
        Next

        'Tracé des batons
        Draw_Baton()
    End Sub

Ensuite en valeur private du controle j'ai ajouté

Private cBatonColor As Color ' couleur des batons

et dans la région propriétés j'ai ajouté

   ' Couleur Baton

    Public Property BatonCouleur() As Color
        Get
            Return cBatonColor
        End Get
        Set(ByVal value As Color)
            cBatonColor = value
            Draw_Axe()
            Draw_Baton()
        End Set
    End Property

Et j'ai modifié ceci :

    Private Sub Draw_Baton()

        Image_Baton = Image_Axe.Clone 'Création de l'image baton


        Dim graph As Drawing.Graphics = Graphics.FromImage(Image_Baton) 'on récupère l'objet graphics de cette image pour dessiner
        graph.SmoothingMode = Drawing2D.SmoothingMode.HighSpeed 'passage en mode HighSpeed

        'boucle sur toutes les valeurs du tableau et affichage des batons
        For x As Integer = 0 To NumAbs - 1
            Tab_Point(x) = Math.Ceiling(Tab_Point(x))

            Dim valeur_attenuation As Single = IIf(Tab_Point(x) > NumOrd, NumOrd, Tab_Point(x)) 'au cas ou les valeurs du tableau dépasse de la valeur max
            Dim My_rectangle As New Rectangle(20 + Unite_X * x, 20 + Unite_Y * (NumOrd - valeur_attenuation), Unite_X, Me.Height - 40 - Unite_Y * (NumOrd - valeur_attenuation)) 'création du rectangle suivant la valeur du tableau
            Dim My_Brush As New SolidBrush(cBatonColor)


            'affichage du rectangle
            graph.FillRectangle(My_Brush, My_rectangle.X, My_rectangle.Y, My_rectangle.Width, My_rectangle.Height)

            ' affichage du contour
            graph.DrawLine(Pens.Black, My_rectangle.Left, My_rectangle.Top + My_rectangle.Height, My_rectangle.Left, My_rectangle.Top)
            graph.DrawLine(Pens.Black, My_rectangle.Left, My_rectangle.Top, My_rectangle.Left + My_rectangle.Width, My_rectangle.Top)
            graph.DrawLine(Pens.Black, My_rectangle.Left + My_rectangle.Width, My_rectangle.Top, My_rectangle.Left + My_rectangle.Width, My_rectangle.Top + My_rectangle.Height)
        Next

        'Affichage des coordonnées sur l'image
        If Not Image_Coord Is Nothing Then
            graph.DrawImage(Image_Coord, Me.Width - size_texte.Width, 0)
        End If

        'affichage des images à l'écran
        Flushimage()

    End Sub

Voilà, je remarque que parfois les bordures cote a cote de 2 batons sont pas colinéaires donc ca fait une trait épais.

Voilà

Commentaire de gillardg le 15/10/2008 16:11:49 8/10

salut , bon travail ! merci 8/10

Commentaire de Redman31100 le 15/10/2008 16:18:56

Merci lesdis d'avoir amélioré suivant mes idées ^^

Commentaire de sediq le 15/10/2008 17:26:01

comment activer ce control? il n'est lié à aucun projet

Commentaire de lesdis le 15/10/2008 17:31:36

Il suffit de l'ajouter dans un projet et de faire un glisser/déposer de la boite à outils vers ta form

Commentaire de sediq le 15/10/2008 17:39:01

Ah oui j'ai pas fait attention à la boite à outils Merci LESDIS.

Commentaire de sediq le 15/10/2008 17:57:50 10/10

il n'y a pas un moyen de rendre ce diaqramme dynamique cad on précise les valeurs des le début pour reprenter des statistiques.

Commentaire de Redman31100 le 15/10/2008 17:59:34

C'est vrai que tu peux pas faire un redim sur la propriété pour agrandir. Moi j'ai réfléchi mais je trouve pas comment faire car redim ca marche ça me dit que la valeur est readonly. pourtant la propriété elle me semble qu'elle est pas readonly

Commentaire de lesdis le 15/10/2008 19:40:03

Vous pouvez utilisé la propriété Values pour entrer directement des valeurs prédéfinies.

Par il faut que ce soit un tableau de single dont la taille correspond aux nombres de colonnes du diagramme.

Commentaire de Ouggada le 03/03/2009 10:49:37

salut!!
j'aimerai utiliser cette source mais je ne sais vraiment
pas comment faire pour la lier à mon projet et accessoirement à un bouton!

En effet lorsque je fais :
Diagramme_Baton.Sow()

j'ai le message suivant :
Une référence à un membre non partagé requiert une référence d'objet.

Merci pour vos réponses,
Cordialement

Commentaire de lesdis le 03/03/2009 11:23:08

Comme dis plus haut :

Il suffit de l'ajouter dans un projet et de faire un glisser/déposer de la boite à outils vers ta form.

Commentaire de Ouggada le 03/03/2009 14:26:31

yo!
je suis désolé, je suis ptetre un peu lent mais justement je ne comprend pas du coup à quoi correspond le glisser/déposer de la boite à outils vers ma form???

Merci de ta réponse en tout cas!

Commentaire de lesdis le 03/03/2009 14:42:35

Ce diagramme est un controle donc une fois le fichier ajouté a ton projet, tu peux l'ajouter sur ta form comme tu peux le faire avec un button.

Si tu ne le trouve pas dans la boite a outils, hésite pas à revenir. Au pire j'ajouterais un projet complet dans la source

Commentaire de Ouggada le 03/03/2009 15:07:54

je suis désoler mais j'ai essayer et je n'ai rien trouver...
je me sens mal d'être le seul à pas avoir trouver la solution...
Enfin!
Si tu peux m'aider, j'en serai ravi.
ReMerci d'avance!

Commentaire de Ouggada le 03/03/2009 16:40:47 8/10

ça y'est j'ai réussit!
fiou!
il faudrait peut-être que je m'achète une paire de lunette!!

seulement maintenant je ne vois pas comment lier des données d'une colonne d'un datagrid ou autre chose???

En tout cas c'est stylé!! j'aime bien!  8/10

Commentaire de lesdis le 03/03/2009 16:55:47

Effectivemment, il n'y a rien de prévu pour lier le tableau avec un datasource, une base de donnée, etc.

La seule solution pour le moment est d'utiliser la propriété "Values" qui attend un tableau de single.

Si j'arrive à trouver un peu de temps, je tacherais à rendre ce control plus dynamique.

Commentaire de Ouggada le 04/03/2009 08:22:10

oki merci pour ta réponse!

je vais essayer de m'y atteler et de voir comment faire!
et pourquoi pas la chance du débutant me permettra de trouver la soolution!
Sur ce je me remet au boulot!

Cordialement, Ouggada.

 Ajouter un commentaire


Discussions en rapport avec ce code source dans le forum

Graphics ou usercontrol ? [ par sirozz ] Bonjour à tous, je suis en train de faire une application ou je peux "linker" des picturebox grace à des petites flèches pour créer des hierarchies et Diagramme en baton [ par cline612 ] Bonjour, je suis actuellement étudiante en statistique et informatique et pour mon projet de fin d'année, je dois réaliser un programme en VB.Net. Ce Histogramme ou diagramme en baton [ par onix64 ] Bonjour à tous! Je pense que tout est dans le titre : je cherche à tracer un histogramme que l'on appelle aussi un diagramme en baton. Existe t'il un Graphics et résolution d'écran [ par fiber88 ] Bonjour à tous, Je cherche à mettre un point sur une carte géographique avec des Coordonnées GPS jusque la ça va mais si je change la résolution de mo Dessiner sur le fond d'un UserControl (Couleur) [ par iPol ] Bonjour, Je suis en train de créer un UserControl qui imite le style d'une fenêtre de office 2003 (lorsque vous déplacer une barre d'outils en dehors L'évenement Paint [ par ShayW ] Bonsoir Sur la form j'ai placé 2 picturebox J'ai aussi 2 sub qui dessine dans chaque picturebox j'ai appellé chaque sub à l'évenement Paint des pict Property dans usercontrol [ par PatMav01 ] Bonjour à tous, J'ai suis en train de créer un usercontrol qui me permettra de visualiser les entrées sorties d'une commande numérique par paquet de validation diagramme de classe d'une clinique [ par najouaelqo ] Bonjour, Please j'aimerai que vous me valider mon diagramme de classe de mon PFE, il s'agit d'une gestion de rendez-vous en ligne d'une clinique déve Changer couleur drawstring [ par angelblood ] Salut a tous, Je vous explique : J'ai des drawstring avec une couleur et je voudrais que lorsque que la souris arrive dans la zone elle change de coul


Nos sponsors


Sondage...

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

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 : 1,217 sec (4)

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