AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Sonstige Fragen zu Delphi Delphi Wie benutze ich andere Units in meinem Programm?
Thema durchsuchen
Ansicht
Themen-Optionen

Wie benutze ich andere Units in meinem Programm?

Ein Thema von Chaismo · begonnen am 29. Mai 2007 · letzter Beitrag vom 29. Mai 2007
Antwort Antwort
Chaismo

Registriert seit: 2. Apr 2007
Ort: Dresden
63 Beiträge
 
Delphi 7 Personal
 
#1

Wie benutze ich andere Units in meinem Programm?

  Alt 29. Mai 2007, 12:43
Also hallo erstmal...
Ich bin jetzt schon seit paar Monaten daran Delphi zu lernen und komme schon ganz gut voran nur brauche ich jetzt auch andere Units und sowas.
Da ich darin aber noch keine ahnung habe wollte ich gern mal fragen ob ich diese Units zu meinem Project hinzufügen muss oder nur den Code in mein Project einbezehen muss.
Ich würde mich freuen wenn ihr mir auch gleich sagt wie
schonmal danke im vorraus...
MFg chasmo!
Martin Seeler
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#2

aussagekräftiger Titel

  Alt 29. Mai 2007, 12:51
Gib bitte deinem Thread einen aussagekräftigen Titel, der etwas über das Problem aussagt. Du kannst da zu einfach deinen ersten Beitrag editieren.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#3

Re: Units????

  Alt 29. Mai 2007, 12:59
Zitat:
Units????
Ist es denn so schwer einen Titel zu formulieren, der etwas über das Problem aussagt?

Wie zum Beispiel:
Zitat:
Wie benutze ich andere Units in meinem Programm?
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
Chaismo

Registriert seit: 2. Apr 2007
Ort: Dresden
63 Beiträge
 
Delphi 7 Personal
 
#4

Re: Units????

  Alt 29. Mai 2007, 13:03
Zitat von Luckie:
Zitat:
Units????
Ist es denn so schwer einen Titel zu formulieren, der etwas über das Problem aussagt?

Wie zum Beispiel:
Zitat:
Wie benutze ich andere Units in meinem Programm?
ISt es denn so schwer einfach den kleinen Titel des kleinen freien Bürgers zu akzeptieren?
Fände es trotzdem gut wenn jemand die Frage beantworten könnte und nicht nur den Titel bemeckert
Martin Seeler
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.851 Beiträge
 
Delphi 11 Alexandria
 
#5

Re: Wie benutze ich andere Units in meinem Programm?

  Alt 29. Mai 2007, 13:03
Uses <Unitname> ...;
Markus Kinzler
  Mit Zitat antworten Zitat
Der_Unwissende

Registriert seit: 13. Dez 2003
Ort: Berlin
1.756 Beiträge
 
#6

Re: Units????

  Alt 29. Mai 2007, 13:07
Hi und erstmal herzlich Willkommen in der DP

Was Deine Frage angeht, so muss man hier mehrere Fälle unterscheiden. An sich muss Du immer eine Unit bekannt machen, bevor Du auf ihren Inhalt zugreifen kannst. Dazu wird sie einfach mit der Uses Klausel eingebunden. Erstellst Du ein neues leeres Formular und schaust Dir den Quelltext an, dann findest Du an dieser Stelle schon eine ganze Menge von Units, die aut. eingebunden wird. Die stehen einfach kommagetrennt hinter dem Schlüsselwort Uses.

Findet Delphi im Quelltext (unter Interface oder unter Implementation) eine solche Uses-Klausel, weiß es, dass es die entsprechende Unit hier einbinden soll. Das wiederum heißt, dass Delphi wissen muss, was in dieser Unit steht. Und hier sind wir an dem Punkt, an dem man eben verschiedene Dinge unterscheiden muss. So musst Delphi wissen, wo sich die Unit befindet. Befindet sich die Unit irgendwo (auf einer Festplatte oder gar im Netz) und Delphi müsste suchen, dann kann das bei heutigen Systemen sicherlich ein Weilchen dauern. Deshalb gibt es einen festen Plan, wo Delphi sucht und in welcher Reihenfolge. Der erste Sucherfolg liefert dann einfach die Unit, die verwendet wird. Liegen also mehere Units mit gleichem Namen vor, wird Delphi die erste nehmen, die es findet.

Ja, ganz allgemein hast Du ja schon gesagt, man kann jedem Projekt Units hinzufügen. Hier speichert Delphi den Pfad zu diesen Units ab und weiß wo es suchen soll. Erstellst Du eine neue Unit, während Du ein Projekt geöffnet hast, so sollte diese automatisch für Dich in das Projekt eingefügt werden und Du kannst die Unit direkt benutzen.
Ist die Position nicht direkt bekannt, so muss Delphi suchen. Der erste Ort, an dem i.d.R. gesucht wird (bei Delphi bin ich mir nicht 100%ig sicher) ist eigentlich immer das gleiche Verzeichnis. Liegt eine Unit im gleichen Verzeichnis, wie die Projektdatei, sollt diese Datei automatisch eingebunden werden. Desweiteren gibt es einen festen Suchpfad, den Du in den Optionen angeben kannst (der müsste Bibliothekspfad heißen). In allen Ordnern, die Du hier angibst wird Delphi dann nach Units suchen, die es nicht anders findet.

Möchtest Du nun auf eine fremde Unit zugreifen, die noch nicht im Suchpfad liegt, so hast Du die Möglichkeit, dass Du
  1. Den Suchpfad erweiterst (macht eigentlich nur Sinn, wenn Du diese Unit wirklich häufiger, in verschiedenen Projekten benötigst)
  2. Die Unit dem Projekt hinzufügen
  3. Die Unit ins gleiche Verzeichnis kopieren (was aber schlecht ist, da Du dann viele Kopien hast und Änderungen für jede Kopie übernommen werden müssten)

Gruß Der Unwissende
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.851 Beiträge
 
Delphi 11 Alexandria
 
#7

Re: Wie benutze ich andere Units in meinem Programm?

  Alt 29. Mai 2007, 13:10
Ein Tutorial zum Lernen:
http://www.dsdt.info/tutorials/?cat=1
Markus Kinzler
  Mit Zitat antworten Zitat
Chaismo

Registriert seit: 2. Apr 2007
Ort: Dresden
63 Beiträge
 
Delphi 7 Personal
 
#8

Re: Wie benutze ich andere Units in meinem Programm?

  Alt 29. Mai 2007, 13:14
Alles klar scheint wunderbar zu funktionieren
Vielen Dank fürs schnelle Antworten
Martin Seeler
  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 07:30 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