![]() |
TChart - Gantt bei Onclick Y-Wert ermitteln
Liste der Anhänge anzeigen (Anzahl: 1)
Hallo,
ich verzweifle gerade an meinem Gantt-Diagramm (Delphi 7 Prof.). Ich möchte erreichen, dass ich die Bezeichnung eines Vorgangs beim "Anklicken" des Graphen (quasi die Graph-Bezeichnung) abfragen kann. Das würde bedeuten, das im Beispiel die Bezeichnung "Bankwesen" in eine Variable geschrieben wird, wenn der zugehörige Graph angeklickt wurde. Leider fehlt mir hierzu völlig der Ansatz, sodass ich über jeden Hinweis dankbar bin. MFG Steffen |
Re: TChart - Gantt bei Onclick Y-Wert ermitteln
Hi WIng2005,
dies sollte über den Event GantSeries.OnMouseDown und den Zugriff über die Properties YValues möglich sein, die du beispielsweise über die die Methode AddGanttColor setzt, da der YValue meist nicht verwendet wird.
Delphi-Quellcode:
...
for i := 0 to Werte.Count-1 do <GanttSeries>.AddGanttColor(<FromDate>, <ToDate>, [b]<Y-Wert>[/b], 'Mein Gant', clNavy); ...
Delphi-Quellcode:
...GantChartMouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
var ClickedGant : Longint; begin if Assigned(<GanttSeries>) then begin ClickedGant := FGanttSeries.Clicked(x, y); if (ClickedGant <> -1) then begin <GanttSeries>.[b]YValues[/b][ClickedGant])); end; end; end; |
Re: TChart - Gantt bei Onclick Y-Wert ermitteln
Danke für die schnelle Antwort....
mit deiner Methode, liest er (denke ich) doch nur den Index aus. Was ich suche, ist eine Möglichkeit den String, der als Y-Wert zugewiesen ist, auszulesen und in eine Variable zu lesen... MFG Steffen |
Re: TChart - Gantt bei Onclick Y-Wert ermitteln
Den Wert des Labels bekommst du ganz einfach über das Labels.Property.
Delphi-Quellcode:
[...]
if Assigned(Series1) then begin ClickedGant := Series1.Clicked(x, y); if (ClickedGant <> -1) then ShowMessage('Label: '+Series1.Labels[ClickedGant]); end; |
Re: TChart - Gantt bei Onclick Y-Wert ermitteln
Ich bin nicht ganz sicher, ob ich grundlegend was falsch mache, aber bei mir
meckert er bei "ShowMessage('Label: '+Series7.Labels[ClickedGant]);" mit [Fehler] Main.pas(373): Inkompatible Typen: 'String' und 'Pointer' MFG Steffen |
Re: TChart - Gantt bei Onclick Y-Wert ermitteln
Habs gefunden, das XLabel wars....:
Delphi-Quellcode:
Vielen Dank für deine Ansätze...
procedure TMainForm.Ch_Ent_PV1MouseDown(Sender: TObject;
Button: TMouseButton; Shift: TShiftState; X, Y: Integer); var ClickedGant : Longint; begin if Assigned(Series7) then begin ClickedGant := Series7.Clicked(x, y); if (ClickedGant <> -1) then ShowMessage('Label: '+Series7.XLabel[ClickedGant]); end; end; MFG Steffen |
Alle Zeitangaben in WEZ +1. Es ist jetzt 16:24 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz