XLabel bei Series vertikal ausrichten...
-
DynLineSeries[SeriesNr]->AddXY(X_Wert,Y_Wert,XLabel,ColorTab[ColorNr]);
Wenn String XLablel lang ist, möchte ich ihn vertikal ausgeben. Wie geht es?...
-
schau dir mal das Ereignis OnGetMarkText der Series an
-
Linnea schrieb:
schau dir mal das Ereignis OnGetMarkText der Series an
Könntest du das näher erklären…
Ich bedanke mich im Voraus.
-
Linnea schrieb:
schau dir mal das Ereignis OnGetMarkText der Series an
DynLineSeries[SeriesNr]->AddXY(X_Wert,Y_Wert,XLabel,ColorTab[ColorNr]);
Mit der Beschreibung von ...->OnGetMarkText mit dem Pointer von einer
Funktion bekam ich Zugriff auf String mit dem Inhalt von
Y_Wert. Ich will aber XLabel beeinflussen.
Der Text mit dem Inhalt von XLabel beschreibt einzelnen Punkten von X-Achse
und ist normal (default) horizontal ausgerichtet. Manchmal fehlt es aber für längeren Strings der Platz…
-
das was du bei XLabel einträgst ist meines Wissens nach der Text im Mark, also den Markierungen
hier mal ein Beispiel, allerdings ohne Rahmen...
void __fastcall TForm1::Series1GetMarkText(TChartSeries *Sender, int ValueIndex, AnsiString &MarkText) { TChartSeries *Series = dynamic_cast<TChartSeries*>(Sender); int x,y; LOGFONT LogFont; ZeroMemory(&LogFont, sizeof(LOGFONT)); x = Series->CalcXPos(ValueIndex); y = Series->CalcYPos(ValueIndex); LogFont.lfHeight = 20; LogFont.lfEscapement = 10 * 89.9; // Grad der Drehung LogFont.lfOrientation = 10 * 45; LogFont.lfCharSet = DEFAULT_CHARSET; Chart1->Canvas->Font->Handle = CreateFontIndirect(&LogFont); Chart1->Canvas->TextOut(x,y,MarkText); MarkText = ""; }
-
Chart1->BottomAxis->LabelsAngle=90;
!!!