![]() |
Ü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:
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.
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 wäre super dankbar, wenn ihr mir schnell helfen könntet! |
Re: Übergabe eines Verbundes in eine Prozedur
Ich würde einen Zwischentyp für den Array anlegen und den an die Prozedur übergeben
|
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 10:13 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 by Thomas Breitkreuz