Entwickler-Ecke
Multimedia / Grafik - Diagam
mimi - Fr 17.01.03 22:08
Titel: Diagam
Hallo,
ich möchte ein Kurfen Diagam machen ohne kompons oder so. Ich möchte nur die Image kompo verwenden sonst nichts, wie geht das? Kann mir jemmand ein Beispiel machen ?
MFG
Michael
Jack Falworth - Sa 18.01.03 14:54
warum ohne Komponenten? Machst du dir gerne viel Arbeit?
Mit den Chart Komponenten geht das ganz einfach und man hat viele Einstellungsmöglichkeiten.
MfG
Jack Falworth
mimi - Sa 18.01.03 18:04
ist doch langweilig wenn ich komponenten nutze. Ist gibt garantit für alles inzwischen komponenten für Delphi. So das man nicht mehr alles selber machen musst. Aber so ein Diagamm will ich schon selbst machen nur mit einer Image komponenten oder so.
MFG
Michael
MathiasH - Di 21.01.03 18:29
Hallo mimi
ich hab mal ne Weile an einem Graphenplotter gebastelt, das Hauptproblem war die Achsen zu beschriften, so dass man viele markierungen hat, die aber trotzdem lesbar sind. Der Rest ist vergleichsweise einfach. ich nehme an, du willst den code haben, muss ich erst suchen.......
MathiasH
mimi - Di 21.01.03 18:38
Hi Jack Falworth
Wenn er das macht was ich mir vorstelle dann gerne. das habe ich auch gemerkt: ich wollte einfach nur einmal ein einfaches gitter zeichnen, aber das habe ich schon nicht hinbekommen....
MFG
Michael
smiegel - Di 21.01.03 18:49
Hallo,
folgendes zeichnet ein Fadenkreuz in ein Image. Da hast Du dann einen Anfang und vor allen weisst Du dann, wo Du in der Hilfe nachschauen kannst.
Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10:
| with Image1.Picture.Bitmap do begin Width:=Image1.Width; Height:=Image1.Height; Canvas.FillRect(Canvas.ClipRect); Canvas.MoveTo(0, Height shr 1); Canvas.LineTo(Width, 10, Height shr 1); Canvas.MoveTo(Width shr 1, 0); Canvas.LineTo(Width shr 1, Height); end; |
MathiasH - Mi 22.01.03 13:21
ich kenne mimi immerhin so gut, dass ich weis, dass das koordinatenkreuz nicht sein Problem ist, der weis was canvas ist!!!!!! Das schwierige ist die Beschriftung!, und was meinst du mit in der Hilfe nachguggen???, bitte wo in der Delphi-Hilfe soll das zu finden sein?
MathiasH
smiegel - Mi 22.01.03 18:57
Hallo,
ich kenne mimi gar nicht!
Wenn er schreibt
| Zitat: |
ich wollte einfach nur einmal ein einfaches gitter zeichnen, aber das habe ich schon nicht hinbekommen....
|
hat mit meinem Beispiel den 1. Ansatz wie man so was machen kann. Da ist von Beschriftung noch gar nicht die Rede.
Wenn man dann aber grosse Sprüche klopft wie
| Zitat: |
ist doch langweilig wenn ich komponenten nutze.
|
und dann nicht einmal weiss, wie er sein Programm realisieren kann, sollte meiner Meinung nach dann lieber Rosen züchten oder so.
Der Vorteil von Komponenten liegt unter anderem daran, wenn ich den Quelltext habe, dass ich nachschauen kann, wie haben die das realisiert. Daraus kann ich dann meine Schlüsse ziehen, die Komponente meinen Wünschen entsprtechend anpassen oder mit dem gelernten mein Programm schreiben.
MathiasH - Do 23.01.03 16:57
auch zwischen "Gitter" und "Koordiantenkreuz" besteht ein nicht ganz unerheblicher Unterschied, das Kreuz bringt er sicher hin, aber für ein Gitter muss ähnliches brücksichtigt werden, wie bei der Beschriftung der Achsen
MathiasH
smiegel - Do 23.01.03 17:31
Hallo,
ein Gitter zu zeichnen ist einfacher als eine Achsenbeschriftung. Dies weiss ich aus eigener Erfahrung.
Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: 22: 23: 24: 25: 26: 27: 28: 29: 30: 31: 32:
| funtion Gitter(wo:TCanvas; breit, hoch, stepx, stepY:Integer); var x, y:Integer; begin if ((stepX=0) or (stepY=0)) then Exit; // von links nach rechts wo.Pen.Style.=psDot; wo.Pen.Color:=clBlack; x:=0; y:=0; repeat wo.MoveTo(x, y); wo.LineTo(x, y+Hoch); Inc(x, stepX); until (x>breit);
x:=0; // von oben nach unten repeat wo.MoveTo(x, y); wo.LineTo(x+breit, y); Inc(y, stepY); until(y>hoch); end; // Gitter
... with Image1.Picture.Bitmap do begin Width:=Image1.Width; Height:=Image1.Height; Canvas.FillRect(Canvas.ClipRect); Gitter(Canvas, Width, Height, 10, 10); end; ... |
mimi - Sa 25.01.03 23:48
Danke!
Nun die 2. Frage: Wie kann ich die linke Seite mit Zahlen machen und denn unteren Rand ? Also wie ein Diagam halt aussieht ?
Komponenten haben vor und nachteile gibt ich gerne zu. Aber ich nutze schon sehr oft komponenten, und bei so einem "kleinen" mahte problem möchte ich gerne keine Komponenten erst suchen müssen wo ich mir das abschauen könnten;)
MFG
Michael Springwald
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2026 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!