Seite 1 von 1

Re: Textvariable bei jedem Öffnen des Dokuments inkrementieren

Verfasst: Mo, 09.07.2007 15:37
von ykcim
Hallo,


schau mal hier: http://www.starbasicfaq.de/Wiekannmanau ... l#Zweig227
Dort ist beschrieben wie man auf eine Variable zugreifen kann.

mfg
Michael

Re: Textvariable bei jedem Öffnen des Dokuments inkrementieren

Verfasst: Di, 10.07.2007 11:57
von ykcim
Dann versuchen wir es mal in der langen Version:


Du hast unter Einfügen -> Feldbefehl -> Andere -> Variablen eine Variable erzeugt. Hier im Beispiel mit dem Namen "Wert".
Um diese Variable zu ändern geht man folgenderweise vor:

Code: Alles auswählen

sub setwert
  odocument = thiscomponent
  Dim Var as String
  Dim oTextfieldMaster As Object
  Dim oPropSet as Object
  Dim oDependentTextFields as Object
  Dim oXDependentTextField as Object
  Dim oTextFields as Object
  Dim OldValue as String
  Dim NewValue as Integer
' Die Variable wird über den festgelegten Namen, hier "Wert", aufgerufen
  Var ="com.sun.star.text.FieldMaster.SetExpression.Wert"
  oTextfieldMasters = oDocument.getTextFieldMasters()
  oPropSet = oTextfieldMasters.getByName(Var)
  oDependentTextFields = oPropSet.DependentTextFields
  oXDependentTextField = oDependentTextFields(0)
 'Jetzt wird der alte Wert ausgelesen und um eins erhöht
  oldValue = oXDependentTextField.Content
  newValue = cint(oldValue)
  newValue=newValue+1
  oXDependentTextField.setPropertyValue("Content",cstr(newValue)) 
  odocument.textfields.refresh()
end sub

mfg
Michael