Eigene Uses

Zur Vorstellung von Komponenten und Units für Lazarus

Eigene Uses

Beitragvon deadc0de » 23. Mai 2016, 22:10 Eigene Uses

Guten Abend,
ich würde gerne meine eigenen Uses schreiben. Da ich aber nicht weiß, wie ich die Global in all meine Projekte einbinden kann, würde ich gerne wissen, wie ich das Anstelle.
LG deadc0de
Wissen ist Macht und ich weis, das ich nichts weis
deadc0de
 
Beiträge: 56
Registriert: 24. Jan 2016, 18:31
Wohnort: Winnenden
OS, Lazarus, FPC: Windows(10,8.1,7), Archlinux, Debian | 
CPU-Target: 64Bit + 32Bit
Nach oben

Beitragvon Requion » 23. Mai 2016, 22:19 Re: Eigene Uses

Nabend deadc0de,

du meinst eine "Unit" die in die "Uses"-Klausel kommt?

Das geht über File -> New Unit.
Wenn du die neue Unit dann abspeicherst musst du ihr einen Namen geben. Am besten keinen der schon benutzt wird.

Danach dann den Namen in der Uses Klausel einfügen in der du sie brauchst.
Wenn du sie im kompletten Programm haben willst dann muss sie mit in den Source der Projektdatei (Project -> View Project Source)

Edit: http://wiki.freepascal.org/Unit
Mfg Requion

Das beste an Standards ist, dass es so viele davon gibt.
Requion
 
Beiträge: 106
Registriert: 3. Feb 2016, 09:39
Wohnort: nahe Grimma
OS, Lazarus, FPC: Linux(Arch Linux(+ARM)/Minibian) (L 1.6.0 FPC 3.0.0) | 
CPU-Target: 32/64Bit,ARM(RPi)
Nach oben

Beitragvon deadc0de » 23. Mai 2016, 22:32 Re: Eigene Uses

Was ich erreichen möchte, ist das ich die Unit in anderen Projekten auch aufrufen kann, ohne die Datei immer kopieren zu müssen.
Wissen ist Macht und ich weis, das ich nichts weis
deadc0de
 
Beiträge: 56
Registriert: 24. Jan 2016, 18:31
Wohnort: Winnenden
OS, Lazarus, FPC: Windows(10,8.1,7), Archlinux, Debian | 
CPU-Target: 64Bit + 32Bit
Nach oben

Beitragvon Requion » 23. Mai 2016, 22:38 Re: Eigene Uses

Dann musst du deine Unit entweder in den Include Path packen, was ich aber nicht empfehlen würde, oder du erstellst dir dafür einen Extra Ordner und fügst diesen im Projekt als Search Path ein.
Hab grad kein Lazarus da deshalb kann ich nicht nachschauen. Das sollte aber mit in den Projekteinstellungen sein.

PS: In den Search Path kannst du dann auch alle anderen selbst erstellten Units reinpacken.
Mfg Requion

Das beste an Standards ist, dass es so viele davon gibt.
Requion
 
Beiträge: 106
Registriert: 3. Feb 2016, 09:39
Wohnort: nahe Grimma
OS, Lazarus, FPC: Linux(Arch Linux(+ARM)/Minibian) (L 1.6.0 FPC 3.0.0) | 
CPU-Target: 32/64Bit,ARM(RPi)
Nach oben

Beitragvon deadc0de » 23. Mai 2016, 22:51 Re: Eigene Uses

OK, probier ich mal aus. Danke. Hier habe ich mal die kleine Unit, die ich brauche, da ich meist mit UTF8 arbeite und mir der andere Weg auf dauer zu lange dauert.
Code: Alles auswählen
 
unit UTF8;
 
Interface
 
procedure UTF8write(stringwert: string); //UTF8 Konsolenausgabe
procedure UTF8writeln(stringwert:string); //UTF8 Konsolenausgabe mit Umbruch
procedure UTF8fwrite(var datei:text; stringwert:string); //UTF8 Texteingabe (+ = Strings verketten)
procedure UTF8fwriteln(var datei:text; stringwert:string); //UTF8 Texteingabe mit Umbruch (+ = Strings verketten)
 
 
implementation
procedure UTF8write(stringwert: string);
 
begin
  write(UTF8Decode(stringwert));
end;
 
procedure UTF8writeln(stringwert:string);
 
begin
    writeln(UTF8Decode(stringwert));
end;
 
procedure UTF8fwrite(var datei:text; stringwert:string);
 
begin
    write(datei, UTF8Decode(stringwert));
end;
 
procedure UTF8fwriteln(var datei:text; stringwert:string);
 
begin
    writeln(datei, UTF8Decode(stringwert));
end;
 
end.
 

Ich habe hier einfach mal für alle erdenklichen Fälle eine procedure geschrieben. UTF8write und UTF8writeln für die Konsole und UTF8fwrite und UTF8fwriteln (das f steht für File) für Dateien. Ich weiß, das es für UTF8 Codierung auch andere Wege gibt, aber die die ich probiert habe, waren alle nutzlos mit crt. Deshalb nutze ich das gute alte UTF8Decode, das sehr Zuverlässig arbeitet.
Wissen ist Macht und ich weis, das ich nichts weis
deadc0de
 
Beiträge: 56
Registriert: 24. Jan 2016, 18:31
Wohnort: Winnenden
OS, Lazarus, FPC: Windows(10,8.1,7), Archlinux, Debian | 
CPU-Target: 64Bit + 32Bit
Nach oben

Beitragvon Hartkern » 10. Jun 2016, 15:46 Re: Eigene Uses

wo genau gebe ich den Search Pfad an?
Hartkern
 
Beiträge: 68
Registriert: 5. Dez 2015, 20:03
Wohnort: Leipzig
OS, Lazarus, FPC: Win10 IDE 1.6 | 
CPU-Target: 64Bit
Nach oben

Beitragvon Mathias » 10. Jun 2016, 17:20 Re: Eigene Uses

wo genau gebe ich den Search Pfad an?

Project/Projecteinstellungen.../Compilereinstellungen/Pfade/Andere Units.

Für den Anfang ist dies gut, aber wen du anspruchsvoller wirst, würde ich die Units alle in eine Package stecken.
Mit Lazarus sehe ich gün
Mit Java und C/C++ sehe ich rot
Mathias
 
Beiträge: 4342
Registriert: 2. Jan 2014, 17:21
Wohnort: Schweiz
OS, Lazarus, FPC: Linux (die neusten Trunc) | 
CPU-Target: 64Bit
Nach oben

• Themenende •

Zurück zu Units/Komponenten



Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 0 Gäste

porpoises-institution
accuracy-worried