Am So, den 06.03.2005 schrieb Jörg Schmidt um 12:02:
> Hallo,
> 
> Marc Santhoff schrieb:
> > Am Sa, den 05.03.2005 schrieb Hermann Kienlein um 18:09:
> > > es ist manchmal aber auch verwirrend wohin ThisComponent zeigt: ein
> > > Makro aus einem Dokument raus ist es das Dokument, das
> > gleiche Makro aus
> > > der IDE hast du die IDE im Zugriff (was aber meistens nicht
> > gewollt ist)
> >
> > Das kann ich so nicht stehen lassen:
> >
> > "ThisComponent" zeigt immer auf das geöffnete "echte"
> > Dokumentenfenster,
> > aus dem das gerade laufend Makro aufgerufen wurde.
> 
> also wenn es um "aus dem" geht, und das heißt das sichtbare Fenster,
> dann reicht auch .CurrentComponent (und ThisComponent in jedem Fall).
> Allerdings wäre "immer" im allgemeinen Sinn IMHO deshalb falsch weil
> wenn ich einen Code in den OOo-Bibliotheken habe und der ThisComponent
> enthält:
> *und* ich mehrere Dokumente (gleichen Tys?) geöffnet habe
> *und* ich den Code _aus der aktiven Basic-IDE_ starte (Basic-IDE ist
> "oben" und aktiv i.S. hat Fokus)
> dann bezieht sich ThisComponent auf das Dokumentfenster was der
> Reihenfolge nach "vorn" ist (Reihenfolge meint die Fensterreihenfolge
> die ich bei Windows mit ALT+TAB "durchschalten" kann

Das widerspricht nicht der zugrunde liegenden Logik. Im Gegenteil, ich
finde es nachvollziehbar.

Nur habe ich dazu nichts weiter geschrieben, weil ich diesen Fall nicht
benutze, z.B. aus Gründen der Robustheit (wenn man sich auf
Vorhandensein eines Menüeintrags zum Makrostart verläßt, gibt es
mindestens einen Anwender, der die Menüs verfummelt hat ;).

Und MAkros in Bibliotheken sollten IMHO entweder einen Parameter mit dem
zu bearbeitetenden Dokument übergeben bekommen oder "ihr" Fenster selbst
ermitteln, es kann ja theoretisch auch konkurrierende Zugriffe geben.
Aber das ist Ansichtssache.

Code aus der IDE starten ist ein Sonderfall, wer das tut muß sowieso
gucken, wie er seine Variablen mit den passenden Referenzen gefüllt
kriegt.

Wichtig ist nur, das "ThisComponent" die "Sonderfenster" wie die IDE
nicht berücksichtigt... der DB-Browser ist auch eine Komponente, also
mit "CurrentComponent" zu fassen, nicht aber mit "ThisComponent".

Gruß,
Marc


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Antwort per Email an