![]() |
AW: For-Schleife mit Canvas umsetzten
Zitat:
|
AW: For-Schleife mit Canvas umsetzten
Das deutet aber auf ein ganz anderes Problem hin. Du rufst nicht zufällig in der Paint-Methode ein Refresh, Update, Repaint oder Invalidate auf? Falls nicht, such doch mal im Code nach den o.a. Aufrufen, ich vermute, da ist einer an ungünstiger Stelle, so dass Deine Komponente sich ständig neu zeichnet.
|
AW: For-Schleife mit Canvas umsetzten
Bist Du in der Zwischenzeit wieder davon abgekommen die Skala NEBEN deiner Anzeige zu zeichnen, wie in dieser Diskussion
![]() |
AW: For-Schleife mit Canvas umsetzten
Zitat:
|
AW: For-Schleife mit Canvas umsetzten
Zitat:
Was sollen wir mit wenigen aus dem Zusammenhang gerissenen Zeilen Code anfangen? Es gibt massenhaft Beispiele und Tutorials zum Erstellen einer graphischen Komponente. Hier z.B. auch ein Beispiel von mir: ![]() Wenn du nicht in der Lage bist die Ursache deines Fehlers einzugrenzen, häng den kompletten Quelltext des Projekts an den Beitrag an. Der sollte sich zumindest ohne Fehlermeldungen und Warnungen kompilieren lassen und lesbar formatiert sein. |
AW: For-Schleife mit Canvas umsetzten
Liste der Anhänge anzeigen (Anzahl: 1)
Im Anhang findet Ihr die .pas mit meinem Code,
das Problem liegt darin, dass die Skalierung nicht gezeichnet wird. Finde den Fehler selbst nicht ! |
AW: For-Schleife mit Canvas umsetzten
Zitat:
|
AW: For-Schleife mit Canvas umsetzten
ja seh ich jetzt auch, brauch ich ja garnicht, dennoch zeichnet er nichts ! Die Anzahl der Striche ergeben sich ja aus dem Verhältnis von Breite und Abstand und der Laufvariablen...
|
AW: For-Schleife mit Canvas umsetzten
Verstehe ich nicht. Willst Du eine fixe Strichanzahl mit variablem Abstand oder einen fixen Abstand mit variabler Strichanzahl? Andere Kombinationen erscheinen mir ziemlich sinnfrei.
[edit] Kleines Beispiel: ein Formular (TForm29 in diesem Fall), OnPaint und OnResize sind diese Methoden zugewiesen.
Delphi-Quellcode:
Soll es ungefähr darauf hinauslaufen?[/edit]
procedure TForm29.FormPaint(Sender: TObject);
const ANZ_STRICHE = 20; var Abstand: double; i, X: integer; begin Abstand := ClientWidth / (ANZ_STRICHE + 1); for i := 1 to ANZ_STRICHE do begin X := round(Abstand * i); Canvas.MoveTo(X, ClientHeight); Canvas.LineTo(X, ClientHeight - 20); end; end; procedure TForm29.FormResize(Sender: TObject); begin Invalidate; end; |
AW: For-Schleife mit Canvas umsetzten
Zitat:
Delphi-Quellcode:
Zur Zeit steht dort lbsLabels und das kann ja natürlich nicht funktionieren, weil das Zeichnen für FLabelingStyle = lbsLabels noch nicht implementiert ist!
LabelingStyle := lbsLines;
Übrigens ist das die schlimmste Quelltext-Formatierung aller Zeiten!!! |
Alle Zeitangaben in WEZ +1. Es ist jetzt 13:37 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz