Delphi-PRAXiS
Seite 2 von 3     12 3      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Delphi brauche erklärung für typen (https://www.delphipraxis.net/127225-brauche-erklaerung-fuer-typen.html)

Molzer 11. Jan 2009 11:30

Re: brauche erklärung für typen
 
Hallo und Danke für die zahlreichen Hilfen!!

Bei diesem habe ich ein Problem!
Zeile mit x[i].l,b,h schreibt er mir:
E2010 Inkompatible Typen: 'Integer' und 'Array'
?? warum das denn??
das selbe habe ich wenn ich etwas aus einem array (zb in einem memo)ausgeben möchte..
woran liegt das??

lg

Zitat:

Zitat von DeddyH
Und nun nochmal im Ganzen:
Delphi-Quellcode:
var x: array[1..10] of TB;

//Beim Erzeugen des Formulars die Objekte anlegen
procedure TForm2.FormCreate(Sender: TObject);
var i: integer;
begin
  for i := Low(x) to High(x) do
    x[i] := TB.Create;
end;

//auf ButtonKlick mit Daten füllen
procedure TForm2.Button1Click(Sender: TObject);
var i: integer;
begin
  for i := Low(x) to High(x) do
    begin
      //Länge, Breite und Höhe sind Zahlen, daher Umwandlung nötig
      x[i].l := StrToIntDef(StringGrid1.Cells[1,x],0);
      x[i].b := StrToIntDef(StringGrid1.Cells[2,x],0);
      x[i].h := StrToIntDef(StringGrid1.Cells[3,x],0);
      x[i].bez := StringGrid1.Cells[4,x];
    end;
end;

//Im OnDestroy Objekte wieder freigeben
procedure TForm2.FormDestroy(Sender: TObject);
var i: integer;
begin
  for i := Low(x) to High(x) do
    x[i].Free;
end;


Hawkeye219 11. Jan 2009 11:38

Re: brauche erklärung für typen
 
Hallo,

Zitat:

Delphi-Quellcode:
x[i].l := StrToIntDef(StringGrid1.Cells[1,x],0);
x[i].b := StrToIntDef(StringGrid1.Cells[2,x],0);
x[i].h := StrToIntDef(StringGrid1.Cells[3,x],0);
x[i].bez := StringGrid1.Cells[4,x];

Sollte das letzte "x" in jeder Zeile nicht ein "i" sein?

Gruß Hawkeye

DeddyH 11. Jan 2009 11:50

Re: brauche erklärung für typen
 
Stimmt, Asche auf mein Haupt :oops:

mkinzler 11. Jan 2009 11:54

Re: brauche erklärung für typen
 
Detlef, das war doch sicher reine Absicht, um zu Testen ob er den Code versteht! :zwinker:

DeddyH 11. Jan 2009 11:56

Re: brauche erklärung für typen
 
Naja, den Beweis hat er ja erbracht, dass dem nicht so ist :zwinker:

Molzer 11. Jan 2009 12:50

Re: brauche erklärung für typen
 
Danke!!
Ich habs schon mit i einmal probiert und es hat nicht funkioniert, muss wohl noch etwas anderes geändert haben...

ich würde gerne noch etwas wissen..
Delphi-Quellcode:
 x[i].l := StrToIntDef(StringGrid1.Cells[1,i],0); //wozu ist die 0 am ende ([1,i]0??)
 x[i].b := StrToIntDef(StringGrid1.Cells[2,i],0);
 x[i].h := StrToIntDef(StringGrid1.Cells[3,i],0);
 x[i].bez := StringGrid1.Cells[4,i];
   memo1.lines.add(inttostr(x[i].l));//wie kann ich intdef wieder in einen strign umwandeln
leider kommt noch beim btclick ein fehler:
Erste Gelegenheit für Exception bei $75C942EB. Exception-Klasse EAccessViolation mit Meldung 'Zugriffsverletzung bei Adresse 00463DDC in Modul 'Project1.exe'. Lesen von Adresse 067EEF60'. Prozess Project1.exe (4912)

fg

mkinzler 11. Jan 2009 12:51

Re: brauche erklärung für typen
 
Zitat:

//wozu ist die 0 am ende ([1,i]0??)
standardwert, wenn Konvertierung fehlschlägt
Wie groß ist des das Grid?

DeddyH 11. Jan 2009 12:53

Re: brauche erklärung für typen
 
Zur ersten Frage: StrToIntDef markieren -> F1 (das kann man ja wohl verlangen). Und zur zweiten: hat Dein StringGrid evtl. zu wenig Spalten?

[edit] *Boah* will auch Mod werden, dann kann ich Maskus' Posts vorher löschen, bevor ich meine eigenen abschicke :twisted: [/edit]

Molzer 11. Jan 2009 13:19

Re: brauche erklärung für typen
 
Liste der Anhänge anzeigen (Anzahl: 1)
Zitat:

Zitat von mkinzler
Zitat:

//wozu ist die 0 am ende ([1,i]0??)
standardwert, wenn Konvertierung fehlschlägt
Wie groß ist des das Grid?

4x10

mkinzler 11. Jan 2009 13:26

Re: brauche erklärung für typen
 
Dann solltest du den Code so anpassen, das er die Werte aus den Zeilen statt den Spalten zieht.
Delphi-Quellcode:
.Cells[<Zeile>,<Spalte>]
Details wird dich Deltef gleich sagen


Alle Zeitangaben in WEZ +1. Es ist jetzt 20:30 Uhr.
Seite 2 von 3     12 3      

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