Kürzerer und lesbarer Code durch kürzere Objectpfade?

Hallo zusammen,
gibt es eine Möglichkeit Objektpfade zu kürzen? Aus anderen Sprachen kenne ich das z.B.:

With frmMain.conMitglider
.Name = “Thomas”

EndWith

So hat man deutlich weniger und besser lesbaren Code.

ich bin mir sicher, dass es diese Funktionalität gibt’s, habe es aber nicht gefunden - sry.

Beste Grüße
Sascha

1 Like

Das vermisse ich auch.

Alle Controls eines Fensters sollten privat sein. Dann gibt es gar nicht die Versuchung solche VBA-Pfade zu verwenden. Statt dessen sollten die Objekte mit Events und Methoden miteinander kommunizieren.

Ist leider keine Antwort auf meine Frage. Und vor allem unrealistisch für große Projekte.
Dennoch danke

Nein, die With-Syntax gibt es in Xojo nicht.

Ich weiß nicht, was Du als groß bezeichnest. Mein Programm hat so an die 100klocs. Und selbstverständlich ist Encapsulation wichtiger, desto größer das Programm ist.

was geht ist sowas, muss aber wohl ein Object sein, Strukturen habe ich nie benutzt.

var m As Mitglider = frmMain.conMitglider
m.Name = “Thomas”

With war in VB6 eine tolle Sache.

1 Like

@Beatrix_Willius eatrix_Willius
Das ist schon ein großes Projekt. Da gehts um ein Firmenmanagment in mehreren Ebenen…
Es gilt jetzt auch erst darum, zu sondieren, ob Xojo dazu überhaupt zu gebrauchen ist. Bisher haben sich aber einzelne Punkte ergeben, die nicht dafür sprechen.
Und das soll jetzt hier auch keine Grundsatzdiskusion über den Programmiersteal oder Technik gehen. Der eine strick so und der andere so. Es währe vermessen, dass eine für gut und das andere für schlecht zu heissen. Dafür bin ich schon seit einigen jahrzehnten zu lange im Job und habe da auch eine andere Basis zu. Alles hat seine Vor- und Nachteile.
An der Fehlenden Funktionalität für diesen Fall jedenfalls, wird es nicht liegen Xojo abzuschießen. Da gibt es andere schwerliegendere Sachverhalte :slight_smile:

Beste Grüße
Sascha

1 Like

Mit “Using” ist das schon in die Art möglich:

https://documentation.xojo.com/api/language/using.html#using

1 Like