[gelöst]Änderung an Feldbefehl-Variable wird nicht angezeigt

Programmierung unter AOO/LO (StarBasic, Python, Java, ...)

Moderator: Moderatoren

TheGambler
*
Beiträge: 10
Registriert: Fr, 14.05.2010 09:46

[gelöst]Änderung an Feldbefehl-Variable wird nicht angezeigt

Beitrag von TheGambler »

Hi *,

Nehmen wir mal einen Testfall an.

Der folgende Code...

Code: Alles auswählen

Sub Main
	
	oTextFieldCon = thisComponent.getTextFields()
	oTextFields = oTextFieldCon.createEnumeration()
	Do while oTextFields.hasMoreElements()
		oTextField = oTextFields.nextElement()
		
		if oTextField.VariableName = "TEST" then
			oTextField.setPropertyValue("Content", "etwas Inhalt...")
		end if
	loop
	
End Sub
...erzeugt folgendes Ergebnis:
FeldbefehlTest.jpg
FeldbefehlTest.jpg (3.96 KiB) 721 mal betrachtet
Wie man sieht, wurde der Variableninhalt geändert, nur die Darstellung im Dokument wird nicht nachgezogen. Was mache ich hier falsch?
Zuletzt geändert von TheGambler am Do, 22.07.2010 15:21, insgesamt 1-mal geändert.
Benutzeravatar
komma4
********
Beiträge: 5332
Registriert: Mi, 03.05.2006 23:29
Wohnort: Chon Buri Thailand Asia
Kontaktdaten:

Re: Änderung an Feldbefehl-Variable wird nicht angezeigt

Beitrag von komma4 »

Noch nix "falsch" gemacht, aber das Update der Felder (F9; Extras>Aktualisieren>Felder) vergessen

Code: Alles auswählen

   oTextFieldCon.refresh()
Cheers
Winfried
aktuell: LO 5.3.5.2 30m0(Build:2) SUSE rpm, unter Linux openSuSE Leap 42.3 x86_64/KDE5
DateTime2 Einfügen von Datum/Zeit/Zeitstempel (als OOo Extension)
TheGambler
*
Beiträge: 10
Registriert: Fr, 14.05.2010 09:46

Re: Änderung an Feldbefehl-Variable wird nicht angezeigt

Beitrag von TheGambler »

Leider ändern weder die codezeile, noch die manuelle Anwahl aus dem Menü etwas an dem Zustand. :(
TEST.odt
(9.18 KiB) 34-mal heruntergeladen
DPunch
*******
Beiträge: 1112
Registriert: Mo, 02.11.2009 16:16
Wohnort: Marburg

Re: Änderung an Feldbefehl-Variable wird nicht angezeigt

Beitrag von DPunch »

Aloha

Deine Variable hat den Typ "Standard", nicht den Typ "Text".
Daher wird Text nicht dargestellt - mit Zahlen läuft das reibungslos.
Wenn Du also unbedingt Text benutzen möchtest, setz Deine Variable auf den Typ "Text", oder Du erzwingst die neue Darstellung mit dem Holzhammer per

Code: Alles auswählen

Sub Main
	
	oTextFieldCon = thisComponent.getTextFields()
	oTextFields = oTextFieldCon.createEnumeration()
	Do while oTextFields.hasMoreElements()
		oTextField = oTextFields.nextElement()
		
		if oTextField.VariableName = "TEST" then
			oTextField.setPropertyValue("Content", "etwas Inhalt...")
			oTextField.CurrentPresentation = "etwas Inhalt..." '<-----
		end if
	loop
	oTextFieldCon.refresh()
End Sub
TheGambler
*
Beiträge: 10
Registriert: Fr, 14.05.2010 09:46

Re: Änderung an Feldbefehl-Variable wird nicht angezeigt

Beitrag von TheGambler »

Danke! funzt super...
Antworten