Autor Beitrag
Dude566
ontopic starontopic starontopic starontopic starhalf ontopic starofftopic starofftopic starofftopic star
Beiträge: 1592
Erhaltene Danke: 79

W8, W7 (Chrome, FF, IE)
Delphi XE2 Pro, Eclipse Juno, VS2012
BeitragVerfasst: Do 17.09.09 16:58 
ich bekomme in folgendem Code immer die Fehlermeldung es wären inkompatible Typen was eigentlich nicht sein, es sei denn ich habe mal wieder einen Denkfehler. ^^
ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
TDaten = record
    vorname, nachname : string[30];
    geburtstag : string[15];
    telefon, mobil : string[20];
    email, icq, msn, homepage : string[64];
  end;

var
  Form1: TForm1;
  daten : array of TDaten;
  counter : integer;

procedure TForm1.AddDataClick(Sender: TObject);
begin
Inc(counter);
SetLength(daten, counter);
  daten[counter-1].vorname := edVornameAdd;
  daten[counter-1].nachname := edNachnameAdd;
  daten[counter-1].geburtstag := edBDayAdd;
  daten[counter-1].telefon := edTeleAdd;
  daten[counter-1].mobil := edMobilAdd;
  daten[counter-1].email := edEmailAdd;
  daten[counter-1].icq := edIcqAdd;
  daten[counter-1].msn := edMsnAdd;
  daten[counter-1].homepage := edWebAdd;
end;


Ich bekomme den Fehler bei allen Zuweisungen.

Gruß Dude566

_________________
Es gibt 10 Gruppen von Menschen: diejenigen, die das Binärsystem verstehen, und die anderen.
Narses
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Administrator
Beiträge: 10181
Erhaltene Danke: 1254

W10ent
TP3 .. D7pro .. D10.2CE
BeitragVerfasst: Do 17.09.09 17:00 
Moin!

Du willst doch bestimmt auch die Eigenschaft der VCL-Controls angeben, oder? :zwinker:
ausblenden Delphi-Quelltext
1:
2:
daten[counter-1].vorname := edVornameAdd.Text;
//...
cu
Narses

_________________
There are 10 types of people - those who understand binary and those who don´t.
Dude566 Threadstarter
ontopic starontopic starontopic starontopic starhalf ontopic starofftopic starofftopic starofftopic star
Beiträge: 1592
Erhaltene Danke: 79

W8, W7 (Chrome, FF, IE)
Delphi XE2 Pro, Eclipse Juno, VS2012
BeitragVerfasst: Do 17.09.09 17:02 
oh mein Gott!!!! Wie peinlich.... ich hab das doch net gesehn. ^^ :oops: :oops: :oops: :oops:

Edit: Hier seh ich aber nix was ich vergessen haben sollte und trotzdem kann ich die Daten aus der typisierten Datei nicht in mein dynamisches Array einlesen. Inkompatible Typen : TDaten und ShortString.
ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
var
  datei : file of TDaten;

while not EOF(datei) do
          begin
            SetLength(daten, counter+1);
            read(datei, daten[counter].vorname);
            read(datei, daten[counter].nachname);
            read(datei, daten[counter].geburtstag);
            read(datei, daten[counter].telefon);
            read(datei, daten[counter].mobil);
            read(datei, daten[counter].email);
            read(datei, daten[counter].icq);
            read(datei, daten[counter].msn);
            read(datei, daten[counter].homepage);
            Inc(counter);
          end;

_________________
Es gibt 10 Gruppen von Menschen: diejenigen, die das Binärsystem verstehen, und die anderen.
Boldar
ontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic starofftopic star
Beiträge: 1555
Erhaltene Danke: 70

Win7 Enterprise 64bit, Win XP SP2
Turbo Delphi
BeitragVerfasst: Do 17.09.09 18:05 
Du musst dass alles auf einmal in eine variable vom Typ TDaten laden. Sagt er dir doch schon?
Yogu
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 2598
Erhaltene Danke: 156

Ubuntu 13.04, Win 7
C# (VS 2013)
BeitragVerfasst: Do 17.09.09 19:07 
ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
var
  datei: file of TDaten;
begin
  while not EOF(datei) do
  begin
    SetLength(daten, Length(daten)+1);
    Read(datei, High[daten]);
  end;

Das reicht. Ich hab mir erlaubt, deine schöne Variable counter durch die sowieso schon gespeicherte Länge des Arrays daten zu ersetzen (vorausgesetzt natürlich, counter ist tatsächlich ein Array).

Edit: Danke, user profile iconFlamefire :oops:


Zuletzt bearbeitet von Yogu am Do 17.09.09 20:09, insgesamt 2-mal bearbeitet
Flamefire
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 1207
Erhaltene Danke: 31

Win 10
Delphi 2009 Pro, C++ (Visual Studio)
BeitragVerfasst: Do 17.09.09 19:58 
ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
var
  datei: file of TDaten;
begin
  while not EOF(datei) do
  begin
    SetLength(daten, Length(daten)+1);
    Read(datei, High[Daten]);
  end;


müsste es heißen ;-)
Dude566 Threadstarter
ontopic starontopic starontopic starontopic starhalf ontopic starofftopic starofftopic starofftopic star
Beiträge: 1592
Erhaltene Danke: 79

W8, W7 (Chrome, FF, IE)
Delphi XE2 Pro, Eclipse Juno, VS2012
BeitragVerfasst: Do 17.09.09 21:38 
Achso stimmt das habe ich garnicht beachtet.

user profile iconYogu hat folgendes geschrieben Zum zitierten Posting springen:

Das reicht. Ich hab mir erlaubt, deine schöne Variable counter durch die sowieso schon gespeicherte Länge des Arrays daten zu ersetzen (vorausgesetzt natürlich, counter ist tatsächlich ein Array).


Du meinst wohl daten ein Array ist, denn counter ist ja der Zähler den ich zum Zählen der Einträge verwendet habe, so haben wir es in der Schule gelernt. :roll:

_________________
Es gibt 10 Gruppen von Menschen: diejenigen, die das Binärsystem verstehen, und die anderen.