Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Prism Unit-Aliasnamen (https://www.delphipraxis.net/21925-unit-aliasnamen.html)

Christian S. 10. Mai 2004 09:58


Unit-Aliasnamen
 
Hallo!

Laut Delphi-Hilfe ist es möglich, Kurznamen für Units einzuführen. Die Hilfe beschreibt dies so:
Delphi-Quellcode:
uses MyCompany.AVeryLongNamespaceDesignation.VeryDescriptiveUnitName as aUnit;
Folglich müsste eigentlich auch das gehen:
Delphi-Quellcode:
uses
  System.Windows.Forms as theWinForms,
  System.Drawing, System.Collections, System.ComponentModel, System.Data;
Tut es aber nicht. Ich erhalte folgende Meldung:
Zitat:

[Fehler] WinForm.pas(6): ',' oder ';' erwartet, aber 'AS' gefunden
Also so, als würde es dieses Feature doch nicht geben.

Weiß jemand, wie es richtig geht?

MfG
Peter

P.S.: Ich habe diese Frage bereits hier gestellt. Die Antwort funktionierte leider nicht. :-(

Robert_G 10. Mai 2004 10:01

Re: Unit-Aliasnamen
 
Wozu die Aliase?
Du hast doch deiner Unit einen DefaultNameSpace (oder wie das heißt :gruebel: ) verpasst.
Wenn der eindeutig ist, kannst du darüber sämtliche Klassen und Methoden ansprechen.

Christian S. 10. Mai 2004 10:50

Re: Unit-Aliasnamen
 
Hallo!

Man braucht den kompletten Namen recht selten, das ist richtig. Aber z.B. das hier:
Delphi-Quellcode:
if fb.ShowDialog = System.Windows.Forms.DialogResult.OK then
funktioniert bei mir nur, wenn ich auf der rechten Seite wirklich den kompletten Namen angebe, ein "DialogResult.OK" haut er mir direkt um die Ohren.

MfG
Peter

P.S.: Und außerdem - wir sind ja schließlich in Deutschland - geht's jetzt auch ums Prinzip. Es steht in der Hilfe also muss es gehen. :mrgreen:

maestro 10. Mai 2004 12:25

Re: Unit-Aliasnamen
 
Zitat:

Zitat von Peter Lustig
Weiß jemand, wie es richtig geht?

Ich habe irgendwo gelesen, dass dieses Feature (Unit-Alias) nur in der Doku existiert, aber nicht implementiert wurde...

MathiasSimmack 10. Mai 2004 13:34

Re: Unit-Aliasnamen
 
*mit Sarkasmus in der Stimme*

Mit anderen Worten: Es bleibt wohl bloß die Hoffnung auf den Wechsel auf Delphi 9 gegen Jahresende, wo das Feature möglicherweise nicht nur dokumentiert ist. :roll: Wer sich die neue Version nicht leisten kann oder will, der dürfte dann (wieder mal) in die Röhre gucken, denn ich bezweifle, dass es ein drittes SP für D8 geben wird. Schließlich will Borland ja Geld verdienen. Und das kann man nicht, wenn man Fehler ausbügeln muss.

Schade, @Borland.

Kurz gesagt: Wer von euch noch überlegt, sich Delphi 8 zuzulegen ... Spart euch das Geld für was Vernünftiges!

mirage228 10. Mai 2004 13:44

Re: Unit-Aliasnamen
 
Zitat:

Zitat von MathiasSimmack
Kurz gesagt: Wer von euch noch überlegt, sich Delphi 8 zuzulegen ... Spart euch das Geld für was Vernünftiges!

Naja, für mich (und viele andere) als Delphi 3 Pro Besitzer hat es sich gelohnt, weil ich Delphi 7 und Delphi 8 zusammen gekriegt habe ^^

mfG
mirage228

MathiasSimmack 10. Mai 2004 13:53

Re: Unit-Aliasnamen
 
Ich habe die Hoffnung auch gehabt, dass es sich lohnen würde. Immerhin war ich bislang auch immer der Meinung, ungerade Versionen (also D7) taugen was. Aber leider hat mich, als D5-Besitzer, D7 mehr enttäuscht. Da hilft leider auch das Update nicht.

Die letzte gute Delphi-Version ist für mich Delphi 5.
Und aus Delphi 8 könnte was werden, wenn Borland sich darum kümmert.

Aber das ist ein anderes Thema.

MaBuSE 12. Mai 2004 13:22

Re: Unit-Aliasnamen
 
Zitat:

Zitat von Peter Lustig
Laut Delphi-Hilfe ist es möglich, Kurznamen für Units einzuführen.

hmmm...,
das habe ich auch in der Hilfe gefunden.
Bei mir funktioniert es auch nicht. :(

Zitat:

Zitat von Borland delphi.net Hilfe
Unit aliases

Namespaces can become quite long and cumbersome to type. Delphi for .NET allows you to
declare a local unit alias to introduce an alias for a long namespace.
The following uses clause introduces a local unit alias:
Delphi-Quellcode:
uses MyCompany.AVeryLongNamespaceDesignation.VeryDescriptiveUnitName as aUnit;
Given a unit alias, your source code can refer to an identifier by the shorter name:
Delphi-Quellcode:
// These two statements are equivalent.
writeln(aUnit.SomeString);
writeln(MyCompany.AVeryLongNamespaceDesignation.VeryDescriptiveUnitName.SomeString);
Unit aliases must not conflict with other unit or namespace identifiers. Unit aliases introduce Delphi identifiers, and therefore cannot contain dots. A unit alias is local to the unit in which it is declared. A unit alias does not obscure the fully qualified unit name that it aliases; you may always refer to an identifier either by it's fully qualified name, or by a unit alias.

Link dieser Hilfeseite: ms-help://borland.bds2/bds2guide/html/UsingNamespaces.htm


Alle Zeitangaben in WEZ +1. Es ist jetzt 14:54 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 by Thomas Breitkreuz