![]() |
Undefinierter Bezeichnet TPaint1
Diese folgende Code war zuvor in ein ButtomClick Procedure.
Als ich mit dem testen fertig war, wollte ich daraus eine D_KO_8_zeichnen Procedure machen damit ich dann in der OnPaint dieses aufrufen kann. Mit dem Buttomclick funktionierte es aber nach dem umändern in einer eigene Procedure nicht mehr. Irgendwie stehe ich gerade auf der Leitung und kriege das gerade nicht hin ??
Delphi-Quellcode:
procedure D_KO_8_zeichnen();
var s: string; i: integer; begin D_KO_8; i := 1; while i < 27 do begin s := IntToStr(Spielfeld_array[i,1]); DrawBox(Paintbox1.Canvas.Handle, Spielfeld_array[i,2], Spielfeld_array[i,3], s); inc(i); end; end; |
Re: Undefinierter Bezeichnet TPaint1
Deine Prozedur musst du umändern, damit sie auf das Form zugreift. Es gibt zwei Varianten:
Delphi-Quellcode:
und
procedure TFormX.D_KO_8_zeichnen();
Delphi-Quellcode:
Edits: Schreibfehler.. :roll:
procedure D_KO_8_zeichnen();
var s: string; i: integer; begin with FormX do begin D_KO_8; i := 1; while i < 27 do begin s := IntToStr(Spielfeld_array[i,1]); DrawBox(Paintbox1.Canvas.Handle, Spielfeld_array[i,2], Spielfeld_array[i,3], s); inc(i); end; end; end; |
Re: Undefinierter Bezeichnet TPaint1
Oder auf Alles, was zum Form gehört, richtig zugreifen.
z.B. statt PaintBox1 > Form1.PaintBox1 verwenden
Code:
procedure D_KO_8_zeichnen();
var s: string; i: integer; begin D_KO_8; i := 1; while i < 27 do begin s := IntToStr(Spielfeld_array[i,1]); DrawBox([color=red]Form1.[/color]PaintBox1.Canvas.Handle, Spielfeld_array[i,2], Spielfeld_array[i,3], s); inc(i); end; end; Ach ja, wenn du die variante vom Dax verwenden willst, dann muß deine Prozedur natürlich auch in die Form-Definition eingetragen werden. (z.B. unter PRIVAT) |
Re: Undefinierter Bezeichnet TPaint1
Zunächst mal Danke an euch beiden für euer Hilfe. Habe die 2. Variante genommen die auch prima funktioniert hat. Hatte aber auch die 1. Variante ausprobiert, aber irgendwie bekomme ich das nicht hin obwohl ich es auch in Private definiert habe. Möglich das ich es irgendwie doch falsch gemacht hatte.
Falls Ihr wegen der 1. Variante noch was dazu sagen könnt tut das ruhig damit ich das auch "begreife". Aber in Moment tut die 2. Variante ja auch :) |
Re: Undefinierter Bezeichnet TPaint1
Ähm....
Wenn die Prozedur zur Form gehört:
Delphi-Quellcode:
Wenn nicht musst du natürlich alle nötigen Verweise nitgeben:
procedure DeineForm.D_KO_8_zeichnen();
Delphi-Quellcode:
:lol: Die Typen der Parameter waren wirklich C#. (gar nicht gemerkt :mrgreen: )
procedure D_KO_8_zeichnen(paintBox :TPaintBox, spielFelder :TSpielFeldArray);
var s: string; i: integer; begin D_KO_8; for i := 1 to 26 do // Warum auch immer 1 & 26 *?* begin s := IntToStr(spielFelder[i,1]); DrawBox(paintBox.Canvas.Handle, spielFelder[i,2], spielFelder[i,3], s); inc(i); end; end; |
Re: Undefinierter Bezeichnet TPaint1
Oh Robert :roll: Das hier ist Delphi, nicht C#...
|
Re: Undefinierter Bezeichnet TPaint1
Danke Dir auch, das Problem ist hier ja nun gelöst :) Weiter gehts mit :coder2:
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 00: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