AGB  ·  Datenschutz  ·  Impressum  







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

kann Unit Forms nicht Finden...

Ein Thema von Teekeks · begonnen am 7. Sep 2009 · letzter Beitrag vom 8. Sep 2009
Antwort Antwort
Teekeks

Registriert seit: 19. Okt 2008
Ort: Dresden
765 Beiträge
 
FreePascal / Lazarus
 
#1

kann Unit Forms nicht Finden...

  Alt 7. Sep 2009, 18:28
Hallo!
Ich habe ein Problem:
Ich würde gerne eine Form per "Text" (NonVCL) erzeugen, scheitere aber bereits daran die Unit Forms einzubinden (error: dc.lpr(10,21) Fatal: Can't find unit Forms used by dc
---------------------------------------------
dc.lpr(10,46) Error: Unit nicht gefunden: Forms)

Kann mir jemand erklären warum ich das nicht einbinden kann?

Gruß Teekeks
Peter
"Div by zero Error" oder auch: "Es geht auch ohne Signatur!".
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu
Online

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.063 Beiträge
 
Delphi 12 Athens
 
#2

Re: kann Unit Forms nicht Finden...

  Alt 7. Sep 2009, 18:35
Suchpfade falsch?

erstell doch einfach mal eine neue VCL-Anwendung und schau was dort für Units eingebunden sind (obwohl ich ja dachte, daß diese Unit dort genauso heißt)


PS: das hat nix mit NonVCL zu tun, denn du willst ja die VCL nutzen
Neuste Erkenntnis:
Seit Pos einen dritten Parameter hat,
wird PoSex im Delphi viel seltener praktiziert.
  Mit Zitat antworten Zitat
Teekeks

Registriert seit: 19. Okt 2008
Ort: Dresden
765 Beiträge
 
FreePascal / Lazarus
 
#3

Re: kann Unit Forms nicht Finden...

  Alt 7. Sep 2009, 18:48
Ich habe ja geguckt wie das bei einer VCL-Anwendung heißt und sogar Kopiert...
Ich wüsste nicht was ich falsch gemacht haben könnte...
Delphi-Quellcode:
program dc;

{$mode objfpc}{$H+}

uses
  {$IFDEF UNIX}{$IFDEF UseCThreads}
  cthreads,
  {$ENDIF}{$ENDIF}
// Classes
  { you can add units after this } Interfaces, // this includes the LCL widgetset
  Forms, main;

{$IFDEF WINDOWS}{$R dc.rc}{$ENDIF}

begin
end.
Delphi-Quellcode:
unit main;

{$mode objfpc}{$H+}

interface

uses
  Classes, SysUtils, FileUtil, LResources, Forms, Controls, Graphics, Dialogs,
  StdCtrls, ExtCtrls;
type

  { WarnFrm }

  WarnFrm = class(TForm)
    warnmsg:TLabel;
  public
    constructor Create;
  end;


implementation
{ WarnFrm }

constructor WarnFrm.Create;
begin
  warnmsg:=TLabel.Create;
  inherited Create;
end;


initialization
  {$I unit1.lrs}
end.
Peter
"Div by zero Error" oder auch: "Es geht auch ohne Signatur!".
  Mit Zitat antworten Zitat
Benutzerbild von JamesTKirk
JamesTKirk

Registriert seit: 9. Sep 2004
Ort: München
604 Beiträge
 
FreePascal / Lazarus
 
#4

Re: kann Unit Forms nicht Finden...

  Alt 8. Sep 2009, 13:58
Hi!

Wenn du unter Lazarus die Unit Forms verwenden willst, dann musst du als Abhängigkeit die LCL hinzufügen, da so dem Compiler die passenden Pfade mitgegeben werden.
Dies erreichst du folgendermaßen:
  • Projekt->Projektinspektor
  • Klick auf "Hinzufügen"
  • Tab "Neue Anforderung"
  • in der Combobox "LCL" raussuchen
  • OK drücken und neu kompilieren

Dein Constructor in deinem Formular ist übrigens auch falsch. Du musst ihn folgendermaßen deklarieren:
constructor Create(aOwner: TComponent); override; und in der Implementierung musst du unbedingt ein
inherited Create(aOwner); schreiben.

Du setzt ansonsten die grundlegenden Funktionalitäten eines LCL-Formulars außer Kraft.

Gruß,
Sven
Sven
[Free Pascal Compiler Entwickler]
this post is printed on 100% recycled electrons
  Mit Zitat antworten Zitat
Andreas L.
(Gast)

n/a Beiträge
 
#5

Re: kann Unit Forms nicht Finden...

  Alt 8. Sep 2009, 14:29
Zitat von JamesTKirk:
und in der Implementierung musst du unbedingt ein
inherited Create(aOwner); schreiben.
Und ganz wichtig: Vor den anderen Code. In deinen Code muss die Zeile mit inherited also über warnmsg:=TLabel.Create; stehen.
  Mit Zitat antworten Zitat
Antwort Antwort


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 17:32 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