Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   Übergabe eines Verbundes in eine Prozedur (https://www.delphipraxis.net/86718-uebergabe-eines-verbundes-eine-prozedur.html)

Stöffi 18. Feb 2007 16:20


Übergabe eines Verbundes in eine Prozedur
 
hallo zusammen,

ich habe ein problem mit der übertragung von einem Verbund aus einer Prozedur in eine andere.
Mein Programm soll C-Atome aus einem Stringgrid lesen un in einem Verbund (darunter die speicheradresse, d.h. koordinaten) speichern(passiert in der Prozedur Start).

die Deklaration des Verbundes:

Delphi-Quellcode:
const maxcol=31;
maxrow=25;

type tcatom=record
nummer: array [1..maxcol] of integer;
koordinate:tpoint;
end;

var catom: array [1..100] of tcatom;



procedure Start;
Anzahl_C:=0;
for i:=1 to maxcol
do for j:=1 to maxrow
do begin
if (Form1.Stringgrid1.Cells[i,j]='C')
then begin
Anzahl_C:=Anzahl_C+1;
catom[i].koordinate.x:=i;
catom[i].koordinate.y:=j;
catom[i].nummer[i]:=Anzahl_C;

if (Anzahl_C>=1)
then Bindungen(Anzahl_C,catom[i])

die werte der koordinaten, die i und j entspechen, sollen in die Prozedur 'Bindungen' übergeben werden, damit ich im stringgrid weiterarbeiten kann. jedoch werden die werte nicht übergeben, sondern in catom.koordinate.x und catom.koordinate.y steht jeweils eine 0.


Delphi-Quellcode:
procedure Bindungen(var Anzahl_C:integer; var catom:tcatom);
var ZaehlerMehrfachbindung,ZaehlerEinfachbindung,zaehler,i,j:integer;
begin
ZaehlerMehrfachbindung:=0;
ZaehlerEinfachbindung:=0;
for zaehler:=1 to Anzahl_C
do begin
i:=catom.koordinate.x; //hier sollten die werte des programm 'start' stehen, aber es es hat den wert 0
j:=catom.koordinate.y;
Form1.Stringgrid1.cells[i,j]:='C';
ich habe mich jetzt gefragt, ob es überhaupt möglich ist, innerhalb des verbundes die koordinaten zu übergeben. wenn nicht, hätten wir ein problem und könnten nach einer komplett anderen möglichkeit der Deklaration suchen.

Ich wäre super dankbar, wenn ihr mir schnell helfen könntet!

mkinzler 18. Feb 2007 16:28

Re: Übergabe eines Verbundes in eine Prozedur
 
Ich würde einen Zwischentyp für den Array anlegen und den an die Prozedur übergeben

Stöffi 18. Feb 2007 16:43

Re: Übergabe eines Verbundes in eine Prozedur
 
Kannst du mir dafür bitte ein Beispiel schicken? Ich weiß nicht genau, was du damit meinst


Alle Zeitangaben in WEZ +1. Es ist jetzt 09:03 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz