Seite 1 von 1

Dialog Elemente auflisten

Verfasst: Do 28. Nov 2013, 16:48
von frog333
Hallo Forum,
Ich habe eine Calc Dialog Frage:
ist es möglich die "Elemente" (Textfelder, Labels, ect) eines Dialoges abzufragen?

Für ein Formular kann ich auf diese weise:

Code: Alles auswählen

  oForm = thisComponent.CurrentController.ActiveSheet.Drawpage.Forms.getbyname("frmTest") 
For I = 0 To oForm.Count - 1
  Form = oForm.GetbyIndex(I)
  If Form.HasByName("MyListBox") Then
    Ctl = Form.GetbyName("MyListBox")
    Exit Function
  End If
Next
besten dank für eure hilfe.
Markus

Re: Dialog Elemente auflisten

Verfasst: Do 28. Nov 2013, 17:10
von gogo

Code: Alles auswählen

gO_Dialog= CreateUnoDialog(Dialoglibraries.Standard.MeinDialog)
DialogWert=gO_Dialog.execute()
for i= lbound(gO_Dialog.getcontrols) to ubound(gO_Dialog.getcontrols)
   print gO_Dialog.getcontrols()(i).implementationname
next i
Statt .implementationname kannst Du natürlich alles andere auch verwenden. Ohne Methode erhältst Du das Objekt selbst

Code: Alles auswählen

gO_Dialog.getcontrols()(i)

Re: Dialog Elemente auflisten

Verfasst: Do 28. Nov 2013, 17:40
von pmoegenb

Re: Dialog Elemente auflisten

Verfasst: Do 28. Nov 2013, 17:55
von frog333
Hallo gogo,

vielen dank!
klappt teilweise, denn mit

Code: Alles auswählen

gO_Dialog.getcontrols()(i).implementationname 
bekomme ich
stardiv.Toolkit.UnoFixedTextControl ect. also den "Typen"
und noch nicht den namen...

Code: Alles auswählen

gO_Dialog.getcontrols()(i).text
geht das bei Beschriftungsfeldern

muss noch ein wenig ausprobieren.

kannst du mir evt. noch veraten, wo ich eine übersicht der Eigenschaften und methoden finde ( Objektlibray )?

gruss markus

Re: Dialog Elemente auflisten

Verfasst: Do 28. Nov 2013, 18:59
von frog333
komme leider nicht weiter...

mein Textfeld heisst zu bsp.: "txtForm"
aber den bekomme ich nicht zu gesicht, genaus bei Schaltflächen ect.

wie schon geschrieben:

Code: Alles auswählen

gO_Dialog.getcontrols()(i).text
geht mit Beschriftungsfeldern und gibt den text aus.

Code: Alles auswählen

gO_Dialog.getcontrols()(i).name
fehler: Methode oder eigenschft nicht gefunden. wie kamme ich an den Namen.

Re: Dialog Elemente auflisten

Verfasst: Do 28. Nov 2013, 20:39
von gogo
Installiere XRAY

dann z.B.:

Code: Alles auswählen

...
xray gO_Dialog.getcontrols()(i)
...

Re: Dialog Elemente auflisten

Verfasst: Do 28. Nov 2013, 22:05
von frog333
Hallo gogo,

besten dank für die Hilfe, ES GEHT und ich finde was ich brauche!!!!!!!!!

XRAY hat es gebracht. (hatte mal irgend wo gelesen, es würde mit LibreOffice 4.1 nicht laufen, darum hatte ich es mir auch nicht angeschaut.)

supper.

für andere:

Code: Alles auswählen

gO_Dialog.getcontrols()(i).Model.name
schönen abend noch,
gruss Markus