AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Was mache ich falsch?

Ein Thema von [TP]Hawk274 · begonnen am 10. Apr 2003 · letzter Beitrag vom 10. Apr 2003
 
[TP]Hawk274
(Gast)

n/a Beiträge
 
#1

Was mache ich falsch?

  Alt 10. Apr 2003, 11:47
Delphi-Quellcode:
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls;

type
  ptrEmployment = ^TEmployment;
  TEmployment = record
    FWorkInstruction : String; //ausgeführte Tätigkeit
    FDuration : Double; //Dauer
    FDepartment : String; //Abteilung pro Tätigkeit
  end;

  TTest = class
  private
    FEmployment: Array[0..4] of TEmployment;
    function GetWorkInstruction(nIndex: Integer): String;
  public
    property Taetigkeit[nIndex: Integer]: String read GetWorkInstruction;
    constructor Create;
  end;

  TForm1 = class(TForm)
    Button1: TButton;
    Button2: TButton;
    Label1: TLabel;
    procedure Button1Click(Sender: TObject);
    procedure Button2Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
    Montag: TTest;
  end;

  var
  Form1: TForm1;

implementation

{$R *.dfm}

{ TTest }

constructor TTest.Create;
var
  i: Integer;
begin
  for i := 0 to 4 do
  begin
    FEmployment[ i ].FWorkInstruction := '';
    FEmployment[ i ].FDuration := 0;
    FEmployment[ i ].FDepartment := '';
  end;
  FEmployment[ 0 ].FWorkInstruction := 'Test';
end;

function TTest.GetWorkInstruction(nIndex: Integer): String;
begin
  Result := FEmployment[ nIndex ].FWorkInstruction;
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
  Montag.Create;
end;

procedure TForm1.Button2Click(Sender: TObject);
begin
  Label1.Caption := Montag.Taetigkeit[ 0 ];
end;

end.
Wenn ich nun ein Objekt der Klasse TTest erzeuge und anschließend den Konstruktur aufrufe, dann kommt dauernt eine Access Violation. Aber warum? Ich versteh es nicht? Muss ich vielleicht vorher noch Speicher reservieren? Kann mir das vielleicht jemand mal erklären, steige nicht hinter den Fehler!
thx
  Mit Zitat antworten Zitat
 


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 21:53 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