Sie verpassen Handelsmöglichkeiten:
- Freie Handelsapplikationen
- Über 8.000 Signale zum Kopieren
- Wirtschaftsnachrichten für die Lage an den Finanzmärkte
Registrierung
Einloggen
Sie stimmen der Website-Richtlinie und den Nutzungsbedingungen zu.
Wenn Sie kein Benutzerkonto haben, registrieren Sie sich
Ich glaube nicht, dass Sie von "Pixeln" gesprochen haben.
Sie haben nur ein Y-Array eingereicht. X ist also eine einfache laufende Nummer. Die Ausgabe von GetX ist korrekt.
In der Beschreibung steht eindeutig "Koordinaten". Ich verstehe, dass Koordinaten Pixel sind.
Nein, Koordinaten und Pixel sollten nicht miteinander verbunden werden.
Dann gibt es keine Beziehung zwischen dem, was gerendert wird (tatsächlicher Wert von double) und den Koordinaten in Pixeln. Ich warte auf eine Klarstellung.
Nein, das ist ein gutes Argument.
Schließlich haben Sie nur ein Feld - Y - angegeben. Es musste die Punkte für X als Ordinalzahl automatisch berechnen.
Geben Sie CurveAdd ein zweidimensionales Array, z. B. für X die Zeit (was im Prinzip logisch ist, um Tick-Werte zu erhalten). lassen Sie uns das Ergebnis sehen.
---
Die Ermittlung von Pixelkoordinaten ist eine andere Sache. Schauen Sie sich den Rendering-Code an (oder wo die Kurvenpunktberechnung durchgeführt wird). Wie es die Pixel berechnet. Vielleicht ist dieses Feld gespeichert.
m_canvas.FontSizeSet(m_history.name_size);
if(m_canvas.TextWidth(name)>m_history.name_width)
{
while(m_canvas.TextWidth(name+"...")>m_history.name_width)
name=StringSubstr(name,0,StringLen(name)-1);
name+="...";
}
Fehler gefunden - unendliche while-Schleife, wenn m_history.name_width klein ist
Wie kann ich den Verlauf auf der rechten Seite ganz deaktivieren?
Danke für den Hinweis, wir werden das korrigieren. Es gibt derzeit keine direkte Möglichkeit, den Verlauf zu deaktivieren, aber Sie können die Größe des Kurvennamens HistoryNameWidth und seine Bezeichnung HistorySymbolSize auf Null setzen.
virtuelle Funktionen erstellen?
Ich muss in meinem Nachkommen die Histogramm-Rendering-Funktion umdefinieren - ich brauche zwei Farben - für positive und negative Werte. Und alles ist nicht virtuell, ich kann es nicht umdefinieren (
@Roman Konopelko
Bitte erklären Sie, wie man liest
GetX
Schreibt die X-Koordinaten für alle Kurvenpunkte in ein Array
- Sind es die COORDINATEN (x,y) in Pixeln oder sind es die Werte, die zur Erstellung der Kurve übergeben werden?
@Roman Konopelko
Bitte erklären Sie, wie man liest
GetX
Schreibt die X-Koordinaten für alle Kurvenpunkte in ein Array
- Ist es die COORDINATE (x,y) in Pixeln oder ist es der Wert, der zum Zeichnen der Kurve übergeben wird?
Die Methoden GetX und GetY sind in der Klasse CCurve implementiert und ermöglichen es, die Koordinaten der Kurve abzurufen, die für ihre Erstellung verwendet wurde.
@Roman Konopelko.
in BerechneXAchse()
fehlendes Format wie bei Datum/Uhrzeit TimeToString
haben nur die Formatierung für Doppelwerte StringFormat.
string xformat=m_x.ValuesFormat();
m_xvalues[i]=(xformat==NULL) ? StringFormat("%7g",x) : StringFormat(xformat,x);
Optionen:
- Hinzufügen der CAxis::m_bdatetime-Variable, die beim Formatieren die TimeToString-Funktion anstelle von StringFormat aufrufen soll
- oder zum Mitnehmen
string xformat=m_x.ValuesFormat();
m_xvalues[i]=(xformat==NULL) ? StringFormat("%7g",x) : StringFormat(xformat,x);
in eine separate virtuelle Funktion umwandeln und dem Benutzer erlauben, sie zu überschreiben.
Vielen Dank im Voraus.
PS. Was gibt es Neues über die Klasse und frühere Bugs?
Wird es im neuen Build irgendwelche Neuigkeiten oder Änderungen geben?
Wenn Sie neue Versionen haben, stellen Sie sie bitte hier ein, ohne auf die Veröffentlichung des Builds zu warten.