AGB  ·  Datenschutz  ·  Impressum  







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

Lazarus Unit einbinden, wie?

Ein Thema von Codix32 · begonnen am 8. Apr 2012 · letzter Beitrag vom 9. Apr 2012
Antwort Antwort
Codix32

Registriert seit: 23. Apr 2009
137 Beiträge
 
Delphi 2005 Personal
 
#1

Lazarus Unit einbinden, wie?

  Alt 8. Apr 2012, 15:31
Hallo Leute,

ich versuche gerade in Lazarus eine Unit mit in Delphi erstellten eigenen Funktionen in die Hauptunit einzubinden.

Aber wie geht das? Eine option wie bei Delphi unter DATEI-> Unit einbinden gibt es nicht.
Habe ichs also so versucht:
Delphi-Quellcode:
var
  Form1: TForm1;


implementation

{$R *.lfm}

uses eigeneDatumsroutinen;


end.
Geht aber nicht. Ich kriege die Meldung:
Unit "eigeneDatumsroutinen" not used in Unit1
  Mit Zitat antworten Zitat
Benutzerbild von implementation
implementation

Registriert seit: 5. Mai 2008
940 Beiträge
 
FreePascal / Lazarus
 
#2

AW: Lazarus Unit einbinden, wie?

  Alt 8. Apr 2012, 15:35
Aber wie geht das? Eine option wie bei Delphi unter DATEI-> Unit einbinden gibt es nicht.
Die Uses-Klausel findet man doch wohl auch ohne Menüpunkt

Zitat:
Unit "eigeneDatumsroutinen" not used in Unit1
Klingt eher nach einem Überflüssigkeits-Hinweis als nach einem Fehler
  Mit Zitat antworten Zitat
Codix32

Registriert seit: 23. Apr 2009
137 Beiträge
 
Delphi 2005 Personal
 
#3

AW: Lazarus Unit einbinden, wie?

  Alt 8. Apr 2012, 15:45
Aber wie geht das? Eine option wie bei Delphi unter DATEI-> Unit einbinden gibt es nicht.
Die Uses-Klausel findet man doch wohl auch ohne Menüpunkt

Zitat:
Unit "eigeneDatumsroutinen" not used in Unit1
Klingt eher nach einem Überflüssigkeits-Hinweis als nach einem Fehler
Ok, jetzt nachdem ich einen TButton drauf habe und eine simple Funktion aus der Unit
im Button aufrufe, funktioniert es.

Aber was, wenn die Unit in einem anderen Ordner liegen soll?

Muß ich denn den Pfad mit eingeben?

Das funzt jetzt:
Delphi-Quellcode:
var
  Form1: TForm1;


implementation

{$R *.lfm}

uses eigeneDatumsroutinen;


{ TForm1 }

procedure TForm1.Button1Click(Sender: TObject);
begin
  button1.caption:=TagdesJahres; //<- Funktion liegt in 'eigeneDatumsroutinen.pas
end;
  Mit Zitat antworten Zitat
Benutzerbild von implementation
implementation

Registriert seit: 5. Mai 2008
940 Beiträge
 
FreePascal / Lazarus
 
#4

AW: Lazarus Unit einbinden, wie?

  Alt 8. Apr 2012, 19:53
Aber was, wenn die Unit in einem anderen Ordner liegen soll?

Muß ich denn den Pfad mit eingeben?
Wie in Delphi auch: Du fügst den Pfad den Suchpfaden hinzu. In Lazarus gehst du auf Projekt->Compilereinstellungen, bzw. wenn du den Compiler direkt über die Kommandozeile aufrufst, hängst du den Parameter -FuX:\Dein\Pfad an.
Alternativ gibt's da noch die Möglichkeit, den Pfad direkt in der uses-Klausel mit in anzugeben, aber das sollte man sich besser gar nicht erst angewöhnen
  Mit Zitat antworten Zitat
Benutzerbild von jaenicke
jaenicke

Registriert seit: 10. Jun 2003
Ort: Berlin
9.910 Beiträge
 
Delphi 12 Athens
 
#5

AW: Lazarus Unit einbinden, wie?

  Alt 8. Apr 2012, 20:38
Alternativ gibt's da noch die Möglichkeit, den Pfad direkt in der uses-Klausel mit in anzugeben, aber das sollte man sich besser gar nicht erst angewöhnen
Warum? Die Kompilierzeit ist insbesondere bei größeren Projekten deutlich geringer (zumindest bei Delphi, aber das dürfte bei Lazarus kaum anders sein), zudem brauche ich so nur auschecken und kann direkt kompilieren ohne tausend Pfade einzutragen.

Deshalb sehe ich eigentlich keinen Vorteil darin die Units nicht ins Projekt einzubinden und stattdessen die Suchpfade umständlich vollzupflastern. Welchen siehst du denn?
Sebastian Jänicke
AppCentral
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

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

AW: Lazarus Unit einbinden, wie?

  Alt 8. Apr 2012, 20:49
Wennn die Dateien ausschließlich zu diesem Projekt gehören, dann gehören sie auch in die Projektdatei. (mit IN, wie man hier so schön sagt)
Damit kann man auch über die Projektverwaltung und übers IDE-Insight (F6) schön einfach zu diesen Units springen.

Währe ja auch blöd. wenn die Suchpfade mit projektspezifischen Dingen vollgemüllt würden.

Außerdem kann man diese Projekte dann nicht mehr so einfach verschieben (anderes Verzeichnis oder Rechner), da sie an feste Pfade gebunden sind.
Ein Therapeut entspricht 1024 Gigapeut.
  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 13:50 Uhr.
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