Makroaufruf durch Button im Dialog

Antwort erstellen


BBCode ist eingeschaltet
[img] ist ausgeschaltet
[url] ist eingeschaltet
Smileys sind ausgeschaltet

Die letzten Beiträge des Themas
   

Ansicht erweitern Die letzten Beiträge des Themas: Makroaufruf durch Button im Dialog

Re: Makroaufruf durch Button im Dialog

von keksi1970 » Mo, 15.12.2008 13:26

komma4 hat geschrieben:
Viel Erfolg!

Danke *knirsch :D

lg andreas

Re: Makroaufruf durch Button im Dialog

von komma4 » Mo, 15.12.2008 12:51

Die Zuweisung, die Du mittels Basic-(Dialog-)Editor machst, *ist* eine listener-Programmierung, welche aber die runtime-engine auflöst.

In der entsprechenden dialog.xdl sieht das so aus (Ausschnitt):

Code: Alles auswählen

  <dlg:button dlg:id="CommandButton1" dlg:tab-index="2" dlg:left="8" dlg:top="101" dlg:width="36" dlg:height="12" dlg:default="true" dlg:value="OK" dlg:button-type="ok">
   <script:event script:event-name="on-performaction" script:macro-name="vnd.sun.star.script:wr.x_wps.BTN_DokumentErzeugen?language=Basic&location=application" script:language="Script"/>
Erzeugst Du einen Dialog durch Code, dann musst Du den listener selbst programmieren.

Zu den Zeiten von OOo 2.2.x war es noch unbedingt nötig die listener auch wieder zu deakivieren - ansonsten kam es zu unvorhergesehenem Verhalten der gesamten Anwendung. Ob sich das in späteren Versionen geändert hat: k.A. - ich mache es sicherheitshalber immer noch.

Viel Erfolg!

Re: Makroaufruf durch Button im Dialog

von keksi1970 » Mo, 15.12.2008 11:56

also eine direkte Zuweisung der Eigenschaft/Ereignisse bei click geht nicht ?

trotzdem danke, dann wohl doch mit Listener

Re: Makroaufruf durch Button im Dialog

von komma4 » So, 14.12.2008 18:18

siehe meine Antwort oben: dynamisch erstellte Dialoge benötigen die Zuweisung eines listeners mittels Code.

Re: Makroaufruf durch Button im Dialog

von keksi1970 » So, 14.12.2008 15:57

sorry fuer diesen alten Thread, aber genau das koennte ich auch gebrauchen :)

vlt. mag mir jemand Antwort geben ?

lg Andreas

Re: Makroaufruf durch Button im Dialog

von sg1985 » Mi, 30.07.2008 07:56

@ykcim

wie funktioniert das, das ich dem Button im Dialog per Makro die Eigenschaft zuweisen kann dass er ein anderes Makro (genauer gesagt eine andere Sub Funktion) aufruft?

liebe grüße

Re: Makroaufruf durch Button im Dialog

von turtle47 » Di, 29.07.2008 16:26

Schau Dir mal folgendes untere Beispiel an. Dort wird auch mit dem Listener gearbeitet.
Vielleicht hilfts ja weiter. :)

Jürgen

Re: Makroaufruf durch Button im Dialog

von sg1985 » Di, 29.07.2008 15:50

Ja, der Button ist in einem Dialog. Der Dialog wird aber von einem Makro gezeichnet und daher erreich ich dort nicht den Menüpunkt Eigenschaften/Ereignisse.
Als ich den Dialog per Hand durch den Formeditor gezeichnet habe, bin ich dort hin gekommen zu diesem Menüpunkt, nun aber eben nicht.

Mir wäre es aber sowieso ganz Recht, wenn ich das alles im Makro programmieren könnte. Also der Button wird angeklickt --> ein anderes Makro (sub funktion) wird ausgeführt.

Re: Makroaufruf durch Button im Dialog

von ykcim » Di, 29.07.2008 15:45

Seit wann braucht man für einen Button einen EventListener?
Entweder der Butto ist einem Dialog und kann dann mit der Eigenschaft-Ereignisse -> beim Auslösen ein Makro zugewiesen bekommen oder
der Button ist auf dem Formular und dann kann er auch unter Eigenschaften..... zugewiesen bekommen. Das geht auch per Makro.

mfg
Michael

Re: Makroaufruf durch Button im Dialog

von komma4 » Di, 29.07.2008 15:25

Ja, das geht.

Du musst einen event listener programmieren und den Kontrollelementen zuweisen.

Schau' mal hier: viewtopic.php?f=18&t=6413&p=24291
Oder in einem der 31 threads von DannyB (TheMan !) mit Suchbegriff "event listener" im http://www.oooforum.org


Viel Erfolg!

Makroaufruf durch Button im Dialog

von sg1985 » Di, 29.07.2008 10:22

Ich habe unter "Meine Makros/Standard" 2 Module. Das Modul 1 ist ein Makro, das einen Dialog zeichnet und dessen Listbox mit einer SQL Abfrage befüllt. Der Dialog enthält einen OK-Button,
bei Klick dieses OK-Buttons würde ich gerne das Makro in Modul 2 Aufrufen, das den selektierten Wert der Listbox im Dialog ausliest.

Geht das?

Nach oben