![]() |
Re: Rückgabe
Ja ich hab den roten Kasten gesehn und geguckt was da steht und da hab ich nur das mit den var/out Parametern in Proceduren gelesen und weil ich nicht gedacht hätte das inzwischen schon wieder 2 (!) neue Antworten aufgetaucht sind hab ich den Kasten ignoriert -.-^^
|
Re: Rückgabe
Zitat:
Da kannst Du dann x und y auf einmal übergeben. Grüße Klaus |
Re: Rückgabe
in diesem Fall würde ich eine Funktion nehmen, die einen TPoint zurückgibt. Und dann halt:
Delphi-Quellcode:
Evtl. auch anderer Seperator anstatt ";" :zwinker:
//P1: TPoint;
Panel1.Caption := IntToStr(P1.X) + ';' + IntToStr(P1.Y); //Edit: roter Kasten kam nicht?! :wall: |
Re: Rückgabe
Zitat:
Damit wird deine Parameterschlacht deutlich reduziert:
Delphi-Quellcode:
Hinweis: um einen x- und y-Wert in einen TPoint zu verwandeln, gibt es die Funktion Point().
function GetColPoint(D: string; P1,P2, P3,P4 : TPoint; Side: Integer):TPoint;
begin ... // dein Job Result.x := ... Result.y := ... end; // Aufruf var ausgabepos : TPoint; begin ausgabepos := GetColPoint(.....); Labelx.Caption := inttostr(ausgabepos.x); Labely.Caption := inttostr(ausgabepos.y); |
Re: Rückgabe
Das mit dem Point ist eigendlich eine gute idee aber ich will die prozedur in ein 3D spiel einbauen deswegen muss ich danach sowieso noch eine weitere prozedur machen die drei rückgaben macht (X,Y,Z)
|
Re: Rückgabe
mach einen eigenen Record:
Delphi-Quellcode:
type
T3dPoint = record X, Y, Z: integer; end; |
Re: Rückgabe
wohin kommt der teil mit type..?
|
Re: Rückgabe
vor / nach der Deklaration von TForm1
|
Re: Rückgabe
Delphi-Quellcode:
[Fehler] Physik.pas(116): Objekt oder Klassentyp erforderlich
type
Collision = record X,Y,Z: Real; end; Collision.Y := GetColPoint(...); [Fehler] Physik.pas(118): Nicht genügend wirkliche Parameter <- Es sind aber genauso viele [Fataler Fehler] Unit1.pas(56): Verwendete Unit 'Physik.pas' kann nicht compiliert werden ... :gruebel: |
Re: Rückgabe
Hi,
du schreibst auch nicht
Delphi-Quellcode:
oder?
Integer := 5;
:arrow:
Delphi-Quellcode:
Gruß
var Abc: Collision:
begin Abc.x := 1; Neutral General |
Alle Zeitangaben in WEZ +1. Es ist jetzt 20:29 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