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

Composants VCL Delphi Discussion :

Coordonnées X Y - sans curseur (ChartSeries)


Sujet :

Composants VCL Delphi

  1. #1
    Nouveau Candidat au Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Décembre 2013
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Canada

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Décembre 2013
    Messages : 2
    Points : 1
    Points
    1
    Par défaut Coordonnées X Y - sans curseur (ChartSeries)
    Bonjour,
    Je reçois ces coordonnées (X,Y) facilement avec le curseur dans la procédure ci-dessous :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    procedure TForm1.Chart1MouseMove(Sender: TObject; Shift: TShiftState; X,
      Y: Integer);
    var
      XVal: Double;
      YVal: Double;
    begin
      XVal := Chart1.Axes.Left.CalcPosPoint(X);
      YVal := Chart1.Axes.Left.CalcPosPoint(Y);
      Label1.Caption := FormatFloat('#.##', XVal);
      Label2.Caption := FormatFloat('#.##', YVal);
    end;
    Mais j'aimerais avoir les mêmes coordonnées de cette seule valeur en cliquant sur un bouton séparé (et non pas par le mouvement de la souris au-dessus de ce point). J'ai ce code ci-dessous, mais il y a ici une erreur. Pourriez-vous m'aider en corrigeant ce code ci dessous? Merci pour votre aide à l'avance.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    procedure TForm1.Button1Click(Sender: TObject);
    var
      XVal: Double; 
      YVal: Double;
    begin
    ////// Il y a ici un problème...
      XVal := Series1.CalcXPosValue(0);
      YVal := Series1.CalcYPosValue(0);
      Label3.Caption := FormatFloat('#.##', XVal);
      Label4.Caption := FormatFloat('#.##', YVal);
    ///////////
    end;

  2. #2
    Membre expert
    Avatar de Charly910
    Homme Profil pro
    Ingénieur TP
    Inscrit en
    Décembre 2006
    Messages
    2 344
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur TP
    Secteur : Bâtiment Travaux Publics

    Informations forums :
    Inscription : Décembre 2006
    Messages : 2 344
    Points : 3 122
    Points
    3 122
    Par défaut
    Bonjour,

    quel est ton message d'erreur ?

    il faut surement que tu mettes :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
       XVal := Chart1.Series1.CalcXPosValue(0);
    A+

    Charly

    PS : n'oublie pas aussi d'indenter ton code

  3. #3
    Nouveau Candidat au Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Décembre 2013
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Canada

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Décembre 2013
    Messages : 2
    Points : 1
    Points
    1
    Par défaut
    Merci pour la réponse.
    J'ai deux gaugeSeries (Teechart). Avec la procédure MouseMove, dans le cas de GaugeSeries1.Value (en déplaçant le curseur au-dessus) - par exemple - 'X' est '101' 'Y' est '24', dans le cas de GaugeSeries2.Value, 'X' est '56' et 'Y' est '79'. Et ces coordonnées sont correctes, sans doute.
    Mais en utilisant la seconde méthode (Button1.Click), ces coordonnées sont toujours '66' et '5', pour tous les GaugeSeries. Non-sens.
    En fait, ce que je veux, c'est de lier GaugeSeries1.Value et GaugeSeries2.Value
    avec une ligne; mais pour dessiner une ligne, j'ai besoin des coordonnées (X et Y) de ces 'values'.
    S'il y avait un autre méthode de dessiner une ligne entre GaugeSeries1.Value et
    GaugeSeries2.Value (TeeChart.Gauge), je ne persisterais dans ce problème, mais je n'ai aucune idée...

  4. #4
    Modérateur
    Avatar de tourlourou
    Homme Profil pro
    Biologiste ; Progr(amateur)
    Inscrit en
    Mars 2005
    Messages
    3 856
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Biologiste ; Progr(amateur)

    Informations forums :
    Inscription : Mars 2005
    Messages : 3 856
    Points : 11 290
    Points
    11 290
    Billets dans le blog
    6
    Par défaut
    quid de http://www.steema.com/support/faq/Ne...AX_DRAWING.htm :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Chart1.Axis.Bottom.CalcXPosValue(Chart1.Series(0).XValues.Value(10))
    Delphi 5 Pro - Delphi 11.3 Alexandria Community Edition - CodeTyphon 6.90 sous Windows 10 ; CT 6.40 sous Ubuntu 18.04 (VM)
    . Ignorer la FAQ Delphi et les Cours et Tutoriels Delphi nuit gravement à notre code !

  5. #5
    Membre expert
    Avatar de Charly910
    Homme Profil pro
    Ingénieur TP
    Inscrit en
    Décembre 2006
    Messages
    2 344
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur TP
    Secteur : Bâtiment Travaux Publics

    Informations forums :
    Inscription : Décembre 2006
    Messages : 2 344
    Points : 3 122
    Points
    3 122
    Par défaut
    Désolé, mais je ne dois pas avoir les mêmes composants que toi. Ton code ne compile pas sur mon D7. Je n'ai pas de "Axes.Left" dans mon TChart (mais "LeftAxis" par exemple)

    Charly

Discussions similaires

  1. Possible sans curseur ?
    Par laurent9257 dans le forum Langage SQL
    Réponses: 11
    Dernier message: 08/12/2008, 10h19
  2. TEdit sans curseur
    Par czezko dans le forum Delphi
    Réponses: 8
    Dernier message: 17/04/2007, 11h18
  3. Réponses: 2
    Dernier message: 17/10/2006, 10h54
  4. TEdit sans curseur
    Par sanqara dans le forum Composants VCL
    Réponses: 7
    Dernier message: 30/04/2006, 20h39
  5. Traitement ligne par ligne sans curseur
    Par AbyssoS dans le forum MS SQL Server
    Réponses: 1
    Dernier message: 28/02/2006, 17h46

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