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

C++Builder Discussion :

TChart : d�placer un point [Trucs & Astuces]


Sujet :

C++Builder

  1. #1
    Membre �prouv�
    Inscrit en
    Mars 2002
    Messages
    105
    D�tails du profil
    Informations forums :
    Inscription : Mars 2002
    Messages : 105
    Par d�faut [R�solu] TChart : d�placer un point
    Bonjour,

    je dessine une courbe (TLineSeries) dans un TChart. Je souhaite que l'utilisateur puisse cliquer sur un point de la courbe et le d�placer.

    Un tel d�placement est il possible ?

    Merci d'avance,
    Nicolas

  2. #2
    Membre �prouv�
    Avatar de bebeours
    Profil pro
    Inscrit en
    Septembre 2002
    Messages
    103
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2002
    Messages : 103
    Par d�faut
    Ce d�placement est tout � fait possible :
    - dans un premier temps utilise l'�v�nement de ta TSeries :
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
     
    void __fastcall TForm1::Series1Click(TChartSeries *Sender, int ValueIndex,
          TMouseButton Button, TShiftState Shift, int X, int Y)
    {
     
    }
    pour r�cup�rer l'index du point sur lequel tu as cliqu�, le bouton de la souris enfonc� et l'emplacement d'origine de la souris en X et Y.
    - dans un second temps utilise l'�v�nement de ton TChart :
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
     
    void __fastcall TForm1::Chart1MouseUp(TObject *Sender, TMouseButton Button,
          TShiftState Shift, int X, int Y)
    {
     
    }
    pour r�cup�rer le bouton de la souris enfonc� ainsi que l'emplacement d'arriv�e de la souris en X et Y.

    Voil�. Maintenant tu modifies les coordonn�es du point ValueIndex (ni�me point de ta s�rie) en fonction du X et Y d'arriv�e (c'est lourd il faut que tu utilises une fonction pour calculer les valeurs correspondantes en fonction de tes axes ... je sais plus laquelle) puis tu redessines enti�rement ton TChart.

  3. #3
    Membre �prouv�
    Avatar de bebeours
    Profil pro
    Inscrit en
    Septembre 2002
    Messages
    103
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2002
    Messages : 103
    Par d�faut
    J'ai retrouv� la fonction pour calculer la valeur correspondante � une position en pixel (X ou Y) sur un axe :
    S'applique �

    Composant TChartAxis

    D�claration

    function CalcPosPoint(Value : Integer) : Double;

    Description

    Cette fonction renvoie la valeur correspondante d'une position � l'�cran. Celle-ci doit �tre comprise entre les limites de l'axe.

    Voir le Guide de l'utilisateur pour plus d'informations.

  4. #4
    Membre �prouv�
    Inscrit en
    Mars 2002
    Messages
    105
    D�tails du profil
    Informations forums :
    Inscription : Mars 2002
    Messages : 105
    Par d�faut
    C'est exactement ce que je cherchais � faire.
    Merci beaucoup.

    Nicolas

+ R�pondre � la discussion
Cette discussion est r�solue.

Discussions similaires

  1. [TChart] D�placer un point sur une courbe
    Par paradise dans le forum Composants VCL
    R�ponses: 2
    Dernier message: 27/11/2011, 12h12
  2. Excel 2007 - D�placer un point dans graphique
    Par mirmande dans le forum Excel
    R�ponses: 2
    Dernier message: 06/07/2009, 10h25
  3. [TPW] D�placer un point sur une trajectoire
    Par dmimnet dans le forum Turbo Pascal
    R�ponses: 12
    Dernier message: 13/04/2008, 18h58
  4. D�placer un point sur une courbe
    Par Wassim123 dans le forum MATLAB
    R�ponses: 3
    Dernier message: 19/09/2007, 13h23
  5. D�placer des points d'une ligne
    Par PadawanDuDelphi dans le forum Delphi
    R�ponses: 2
    Dernier message: 26/09/2006, 10h57

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