Entwickler-Ecke

Delphi Language (Object-Pascal) / CLX - Fehler identifier idents no member "CreateForm"


Arkathor - Mi 01.09.10 15:46
Titel: Fehler identifier idents no member "CreateForm"
Hallo
Ich wollte einen kleinen Taschen Rechner erstellen. In der Schule haben wir dazu etwas theorie gemacht und da hat es auch alles gut funktioniert (wir haben das erst für addition gemacht). Ich wollte das jetzt zu hause nach machen und etwas ausbauen, aber have ich anderen compiler und kriege eine fehlermeldung:
Zitat:
project1.lpr(26,3) Note: Local variable "ErrorMsg" not used
project1.lpr(40,15) Error: identifier idents no member "CreateForm"
project1.lpr(40,25) Error: Illegal expression
project1.lpr(40,25) Fatal: Syntax error, ";" expected but "(" found

Ich bitte um hilfe beim behebung von diesem fehler.
P.S.
Quelltext:

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:
27:
28:
29:
var
  Form1: TForm1;
  Zahl1: integer;
  Zeichen: char;

implementation

{ TForm1 }

procedure TForm1.AdditionsBTClick(Sender: TObject);
begin
     Zahl1:=strtoint (EingabeED.text);
     EingabeED.text:='';
end;

procedure TForm1.BeendenBTClick(Sender: TObject);
begin
  close;
end;

procedure TForm1.RechneBTClick(Sender: TObject);
begin
  EingabeED.text:=inttostr(Zahl1+strtoint(EingabeED.text));
end;

initialization
  {$I unit1.lrs}

end.


Moderiert von user profile iconNarses: Delphi-Tags hinzugefügt


platzwart - Mi 01.09.10 16:09

der zugehörige Quelltext wäre nicht schlecht...


jaenicke - Mi 01.09.10 16:46

user profile iconArkathor hat folgendes geschrieben Zum zitierten Posting springen:
aber have ich anderen compiler
In der Schule richtiges Delphi und zu Hause nur Lazarus?


Arkathor - Mi 01.09.10 16:50

user profile iconjaenicke hat folgendes geschrieben Zum zitierten Posting springen:
user profile iconArkathor hat folgendes geschrieben Zum zitierten Posting springen:
aber have ich anderen compiler
In der Schule richtiges Delphi und zu Hause nur Lazarus?
Ja, so ist das. In der schule arbeiten wir in Delphi5, zu hause habe ich nur Lazarus.


jaenicke - Mi 01.09.10 21:14

Dann erstell am besten ein neues Lazarus-Projekt und füge die Formularunit hinzu. Du kannst auch einfach einmal die Projektquelltexte vergleichen (.lpr und .dpr Dateien).

Ich weiß nicht auswendig wie die Projektdatei von Lazarus aussieht und den Quelltext davon hast du ja nicht gepostet. Und da der PC mit Delphi und Lazarus gerade kaputt ist, kann ich auch nicht schauen.

Du musst eben einfach einmal an der angegebenen Stelle schauen was da steht (vermutlich Application.CreateForm) und schauen was da bei Lazarus bei einem neuen Projekt steht.


Arkathor - Do 02.09.10 20:06

user profile iconjaenicke hat folgendes geschrieben Zum zitierten Posting springen:
Dann erstell am besten ein neues Lazarus-Projekt und füge die Formularunit hinzu. Du kannst auch einfach einmal die Projektquelltexte vergleichen (.lpr und .dpr Dateien). [...]
Du musst eben einfach einmal an der angegebenen Stelle schauen was da steht (vermutlich Application.CreateForm) und schauen was da bei Lazarus bei einem neuen Projekt steht.



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:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
41:
42:
43:
program project1;

{$mode objfpc}{$H+}

uses
  {$IFDEF UNIX}{$IFDEF UseCThreads}
  cthreads,
  {$ENDIF}{$ENDIF}
  Classes, SysUtils, CustApp
  { you can add units after this }, Unit1;

type

  { TMyApplication }

  TMyApplication = class(TCustomApplication)
  protected
    procedure DoRun; override;
  public
  end;

{ TMyApplication }

procedure TMyApplication.DoRun;
var
  ErrorMsg: String;
begin

  { add your program here }

  // stop program loop
  Terminate;
end;

var
  Application: TMyApplication;
begin
  Application:=TMyApplication.Create(nil);
  Application.Title:='rechner';
  Application.CreateForm(TForm1, Form1);
  Application.Run;
  Application.Free;
end.
Danke für Rat, leider hat es nicht funktioniert, da die Quelltext von meinem "Rechner" und von einem ganz neuem projekt identisch sind. Es sieht so aus, ale hätte Lazarus das, was er selbst erstellt hat, als fehler angesehen. Ich poste noch das Quelltext von Projekt, vieleicht dort liegt der fehler.


jaenicke - Do 02.09.10 22:41

Funktioniert denn ein neues Lazarus-Projekt mit einem Formular? Wenn ja, wie sieht dort die Projektdatei aus?
(Wenn nein, tja, Lazarus halt^^)


Martok - Do 02.09.10 23:09

FPC hat doch ein Compiler-Define {$MODE Delphi} oder so.
Gibts bestimmt auch in Lazarus.