Hallo,
ich hoffe meine Frage ist hier richtig.
Ich habe zu einem Motor alle 5 Minuten einen Mittelwert.
Dieses möchte ich nun Grafisch (mittels Farben) darstellen, ob die Auslastung gut ist oder nicht.
Meine Frage wäre wie man sowas am besten realisieren könnte (evtl hat jemand dazu schon Erfahrungen gesammelt) PictureBox, DataGridView oder noch anders. Oder gibt es sowas schon als fertigen Plugin.
Ich habe für den Zeitraum 06:00-22:00 und 31 Tagen im Monat dann sehr viele Elemente nötig, was die GUI nicht schneller werden lässt.
In Anhang ein Screenshot, wie es derzeit mittels Excel gelöst wird.
Hoffe jemand kann mir da einen Tipp geben.
Gruß Simon
Auch wenn bestimmt jemand zu etwas fertigem rät, am flexibelsten bist du wenn du dir diese Ansicht selbst zeichnest.
Das heißt ein einziges Bild, in das alles so gezeichnet wird wie es gerade aussehen soll. Nicht zig oder gar hunderte verschiedene GUI Elemente aufs Formular packen.
Ich würde dir auch zum Selberzeichnen raten. Erzeuge eine neue Klasse und leite diese vom Panel
ab und überschreibe die OnPaint
-Methode, s.a. [Tutorial] Zeichnen in Windows-Forms-Programmen (Paint/OnPaint, PictureBox).
Mit der Graphics-Klasse (Zugriff mittels e.Graphics
) hast du alle Zeichenmöglichkeiten.
Evtl. kannst du auch unveränderliche Teile (Hintergrund, Raster o.ä) vorher in ein Bitmap (Image) zeichnen (das sog. Caching) und dann dafür nur e.graphics.DrawImage(bitmap, ...)
aufrufen.
Danke für die Antworten.
Leider ist das Thema für mich komplett neu mit dem "Zeichnen".
Ich würde mir quasi (mit Paint oder so) 5 farbige Felder vorbereiten.
Und dann in einer PictureBox diese entsprechend einfügen.
X0Y0 = Grün
X1Y0 = Grün
X2Y0 = Rot
Habe ich das schon soweit richtig verstanden?
Lies dir doch erstmal den von Th69 verlinkten Artikel durch, dann sollte klar sein, wie das mit dem Zeichnen unter WinForms funktioniert.
Letztendlich mußt du ja nur Linien, Text und farbige Rechtecke zeichnen. Der einzige Aufwand besteht darin, die Positionen der Elemente im Bild zu berechnen, das das sollte meist mit einer einfachen Dreisatz-Berechnung lösbar sein.
Weeks of programming can save you hours of planning