Werte in Diagramm zeichnen GDI+ C#

Kai_Jack

Erfahrenes Mitglied
Hallo Leute,

hat jemand schonmal Werte in einem Diagramm in C# dargestellt ?

Ich weiss nicht genau ob es Methoden dafür gibt und finde kein Beispiel, bitte um Hilfe !!


Jack :)
 
In C# gibts Diagramme ? Echt ? Wo denn ?
Also im Crystal Report gibts welche, da gibst du einfach die Datenquelle an, und wählst per Drag und Drop aus was dagestellt werden soll. Wenn du damit fertig bist bindest du einfach über den Crystal Report Viewer den Report ein, und siehe da, ein Diagramm ;)

Ansonsten keine Ahnung wo du da ein Diagramm in C# gesehn hast, sorry.

Gruss

MFC OpenGL
 
Ist es ja auch, z.b. per Crystal Report ;)

Ansonsten wenn dir die Lösung nicht geheuer ist, dann würd ich vorschlagen du suchst dir eine DLL die das kann.
Aber kann auch sein das ich das nur nicht kenne und du Glück hast das ein anderer eine bessere Möglichkeit kennt ein Diagramm zu erstellen.

Gruss

MFC OpenGL
 
Klar kann man mit GDI+ Diagramme darstellen. Warum sollte das nicht gehen?
Ob es der beste Weg ist weis ich nicht, mit Crystal Report habe ich bisher noch nicht gearbeitet. Ich habe vor ein paar Wochen ein Programm zum Extrapolieren geschrieben.

Gruß
Christoph
 
Hi.

Ja, wennst eins mit GDI+ "malen" willst, dann zeichne einfach Recangles nebeneinander (Rechtecke), die dann wie Türme aussehen. Wie hoch die Sein sollen, entnimmst du einer Variable.

Ansonsten nimmst CR, ist halt etwas professioneller. :)


MfG Alexander12
 
Eigentlich ist das recht einfach.
Du erstellst ein UserForm und rufst via Event die Paint-Methode auf.

Dort rein muss/sollte dann dass hier:
C++:
private void UserFormX_Paint(object sender, PaintEventArgs e)
{
     //muss
            Graphics dtb = e.Graphics;
     //kann, muss aber nicht
           //löschen des gesamten Bereichs
            dtb.Clear(SystemColors.AppWorkspace);
           //Angabe von Skalierung und Form der Einheit
            dtb.PageUnit = GraphicsUnit.Pixel;
            dtb.PageScale = 1;
           //ergibt einfach schönere Bilder ;)
            dtb.SmoothingMode = System.Drawing.Drawing2D.SmoothingMode.AntiAlias;
           
           //hier jetzt alles grafische machen
}
Entweder, Du machst dann in der Paint-Funktion weiter oder Du ordnest alles schön in extra Funktionen und übergibst denen einfach nur das Graphics-Object. Wenn Du dann noch alles (Pixelpositionen) über Verhältnisse berechnest, kannst Du das UserForm im gewünschten Dialog in jede beliebige Größe ziehen und stauchen und hast immer ein proportionenseitig richtiges Bild!

Eigentlich ganz einfach! :)

P.S: Stell für Dein UserForm aber auf alle Fälle "DoubleBuffered = true" ein!
C++:
public UserFormX()
{
            InitializeComponent();
            this.DoubleBuffered = true;
}
 
Zuletzt bearbeitet von einem Moderator:

Neue Beiträge

Zurück