Diagramme



  • Hey liebe Leute,

    macht es Sinn Liniendiagramme in einer TPaintBox durch TCanvas darzustellen? Gibt es dort eine bessere Methode? Problem ist ja das ständige Umrechnen der Position für Strichkorodinaten. Das nervt so richtig. Habt ihr sonst eine Idee wie man das lösen kann wenn ich einen X und Y Wert habe der zusammen eine Motorkurve darstellt?

    Achja, mal ein sehr dumme Frage von mir, aber wie bekomme ich die Hintergrundfarbe von der Paintbox Weiss? Habe natürlich und den Atributten gesucht.
    Und wie bekomme ich einen Kasten um die Paintbox? Sau dumme Fragen, aber ich habe es noch nicht hinbekommen. 😕



  • Hallo

    macht es Sinn Liniendiagramme in einer TPaintBox durch TCanvas darzustellen? Gibt es dort eine bessere Methode? Problem ist ja das ständige Umrechnen der Position für Strichkorodinaten. Das nervt so richtig. Habt ihr sonst eine Idee wie man das lösen kann wenn ich einen X und Y Wert habe der zusammen eine Motorkurve darstellt?

    Du kannst ja noch TChart ausprobieren. Wenn du allerdings völlige Kontrolle haben willst, must du schon mit TPaintBox/TImage selber zeichnen.
    Das umrechnen kannst du dir aber ganz gut kapseln.

    wie bekomme ich die Hintergrundfarbe von der Paintbox Weiss?

    Siehe TCanvas::FillRect

    wie bekomme ich einen Kasten um die Paintbox?

    Siehe TCanvas::FrameRect

    bis bald
    akari



  • Danke dir, das war sehr nützlich.



  • Hey, bitte nochmal eure Hilfe.
    Wollte einen zweiten Graph hinzufügen ind TChart. Problem: Er schreibt mir das ich den Index von minimal 1 überschreite?????

    Chart1->Series[0]->Clear();
    Chart1->Series[1]->Clear();

    Chart1->Series[0]->Add(0,0);
    Chart1->Series[0]->Add(200,100);
    Chart1->Series[0]->Add(300,200);
    Chart1->Series[0]->Add(1100,600);
    Chart1->Series[0]->Add(600,1200);
    Chart1->Series[0]->Add(2100,1600);

    Chart1->Series[1]->Add(0,0);
    Chart1->Series[1]->Add(200,50);
    Chart1->Series[1]->Add(300,2100);
    Chart1->Series[1]->Add(1100,800);
    Chart1->Series[1]->Add(600,100);
    Chart1->Series[1]->Add(2100,800);

    Warum klappt das denn nicht?



  • Hallo

    Chart1->Series[0]->Clear();
    Chart1->Series[1]->Clear();
    

    du must sicher erstmal die zweite Serie erzeugen, als Standard ist nur die erste Serie angelegt.

    bis bald
    akari



  • Aha, danke dir.
    Werde mal sehen ob ich deinem Rat folgen kann. Scheinst dich ja echt auszukennen. Danke für deine Hilfsbereitschaft und ein Großes Lob. Kann noch nicht sagen ob das klappt.



  • Oh man, bin ich bl..
    Wie konnte ich das übersehen. Danke dir nochmals.


Anmelden zum Antworten