AGB  ·  Datenschutz  ·  Impressum  







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

Variablen-Namen abkürzen ?

Ein Thema von sunnyandy · begonnen am 2. Apr 2006 · letzter Beitrag vom 2. Apr 2006
Antwort Antwort
sunnyandy

Registriert seit: 24. Feb 2006
49 Beiträge
 
#1

Variablen-Namen abkürzen ?

  Alt 2. Apr 2006, 17:21
Hallo,

wenn ich aus einer Klasse heraus öfters die Funktion

frmmain.ZQuery.Sql.Text := 'blabla' der Hauptklasse aufrufe, muss ich das ja immer so ausführlich schreiben.

Oder ich mach das natürlich mit With Do...

Kann ich nicht "frmmain.ZQuery.Sql." nen zusätzlichen Namen zuweisen, so dass ich z.B. mainZQ.Text = 'fds' schreiben kann ?

Danke !
  Mit Zitat antworten Zitat
Benutzerbild von SirThornberry
SirThornberry
(Moderator)

Registriert seit: 23. Sep 2003
Ort: Bockwen
12.235 Beiträge
 
Delphi 2006 Professional
 
#2

Re: Variablen-Namen abkürzen ?

  Alt 2. Apr 2006, 17:26
da "frmmain.ZQuery.Sql" ein Object und somit nur ein pointer ist kannst du dies auf eine andere Pointerinstanz zuweisen. Wenn "Sql" also vom Typ TStrings ist würde das so aussehen:
Delphi-Quellcode:
var LSql: TStrings;
begin
  LSql := frmmain.ZQuery.Sql;
  LSql.Text := 'blabla';
Jens
Mit Source ist es wie mit Kunst - Hauptsache der Künstler versteht's
  Mit Zitat antworten Zitat
Benutzerbild von Martin K
Martin K

Registriert seit: 20. Okt 2005
919 Beiträge
 
Turbo Delphi für Win32
 
#3

Re: Variablen-Namen abkürzen ?

  Alt 2. Apr 2006, 17:28
Nur so'ne Idee:
Du legst die einfach eine zusätzliche Prozedur an und übergibst das ganze als Variable:
Delphi-Quellcode:
procedure test(var mainZQ: DeinTyp);
begin
  mainZQ.Text := 'blabla';
end;

//Aufruf:
test(frmmain.ZQuery.Sql);
Bemerkung zu SirThornberry's Methode:
Abschließend müsstest du natürlich noch frmmain.ZQuery.Sql den geänderten Text zuweisen:
frmmain.ZQuery.Sql := LSql
Mit den Menschen ist es wie mit Computern -
es gibt Nullen und Einsen.
  Mit Zitat antworten Zitat
Benutzerbild von leddl
leddl

Registriert seit: 13. Okt 2003
Ort: Künzelsau
1.613 Beiträge
 
Delphi 2006 Professional
 
#4

Re: Variablen-Namen abkürzen ?

  Alt 2. Apr 2006, 17:31
Zitat von Martin K:
Bemerkung zu SirThornberry's Methode:
Abschließend müsstest du natürlich noch frmmain.ZQuery.Sql den geänderten Text zuweisen:
frmmain.ZQuery.Sql := LSql
Wieso? Beide sind Pointer auf das selbe Objekt im Speicher.
Axel Sefranek
A programmer started to cuss, cause getting to sleep was a fuss.
As he lay there in bed, looping round in his head
was: while(!asleep()) ++sheep;
  Mit Zitat antworten Zitat
Benutzerbild von SirThornberry
SirThornberry
(Moderator)

Registriert seit: 23. Sep 2003
Ort: Bockwen
12.235 Beiträge
 
Delphi 2006 Professional
 
#5

Re: Variablen-Namen abkürzen ?

  Alt 2. Apr 2006, 17:36
Wie "leddl" schon schrieb handelt es sich bei meiner Ausführung um einen Pointer auf ein und die Selbe Instanz des Objectes. Von daher ist keine weitere Zuweisung notwendig.
Jens
Mit Source ist es wie mit Kunst - Hauptsache der Künstler versteht's
  Mit Zitat antworten Zitat
Benutzerbild von Phoenix
Phoenix
(Moderator)

Registriert seit: 25. Jun 2002
Ort: Hausach
7.606 Beiträge
 
#6

Re: Variablen-Namen abkürzen ?

  Alt 2. Apr 2006, 22:48
Zitat von sunnyandy:
Hallo,

wenn ich aus einer Klasse heraus öfters die Funktion

frmmain.ZQuery.Sql.Text := 'blabla' der Hauptklasse aufrufe, muss ich das ja immer so ausführlich schreiben.
Du hast jetzt freilich nicht Deine Delphi-Version angegeben, aber in den neueren gibt es sowas wie Quelltext-Vervollständigung. Will heissen Du tippst frmm.. bis er Dir die Variable angibt, drückst enter, tippst Zq.. weiter, und er vervollständigt Dir das auch etc.

Ich würde - allein der Fehleranfälligkeit halber - solche 'Abkürzungen' über andere Variablennamen vermeiden. Mögliche Fehlerquelle: Du gibst ein Objekt über diesen Abkürzungsnamen frei. Der nächste der in dem Quellcode arbeiten muss sucht nach dem normalen Namen, findet keine Freigabe in diesem Kontext und kommt dann später auf die Idee, dieses (schon freigegebene) Objekt zu benutzen. -> Unschön.

Ich würde mich da ganz ehrlich nicht über die paar Buchstaben mehr aufregen.
Sebastian Gingter
Phoenix - 不死鳥, Microsoft MVP, Rettungshundeführer
Über mich: Sebastian Gingter @ Thinktecture Mein Blog: https://gingter.org
  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 02:54 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