Seite 1 von 1
GELÖST: Benötige Hilfe, Kopfzeile & Textfeld
Verfasst: Di, 05.07.2011 13:58
von Brizzl
Hallo Leute,
ich habe eine OO-Writer Textvorlage erstellt. Darin gibt es in der Kopfzeile ein Textfeld (Formular->Textfeld) dessen Inhalt ich per Makro
anpasse. Jetzt möchte ich dieses Feld in jeder Kopfzeile auf jeder Seite angezeigt bekommen. Aber leider wird es nur auf der ersten Seite
gezeigt.
Ich habe versucht die Verankerung (Rechteck mit dem Anker-Symbol) in den Kopfzeilenbereich zu verschieben, das klappt aber leider nicht.
Auch das Ausschneiden aus dem Textbereich und Einfügen in die Kopfzeile brachte keine Erfolge.
Als Workaround hatte ich dann noch versucht statt des Textfeldes einen Feldbefehl zu benutzen, aber es gelingt mir nicht diesem Feld dann
per Makro ( ...getByName("NAME") ) einen Wert zuzuweisen.
Ich suche schon über ne Stunde nach einer Lösung und wäre dankbar für Hilfe.
Grüße
Sascha
Re: Benötige Hilfe, Kopfzeile & Textfeld
Verfasst: Di, 05.07.2011 16:59
von Eddy
Hallo Brizzl,
wenn der Coursor in der Kopfzeile ist > Einfügen > Rahmen, dabei Verankerung am oder als Zeichen hilft nicht? In den Rahmen dann das das Formularfeld?
Mit rahmenlosen Grüßen
Eddy
Re: Benötige Hilfe, Kopfzeile & Textfeld
Verfasst: Mi, 06.07.2011 09:10
von Brizzl
Zunächst einmal besten Dank für den Tipp - den Rahmen bekomme ich hin - er wird auch schön auf jeder Seite wiederholt. Aber
ich bekomme das Textfeld nicht in den Rahmen - ich kann es dort hinziehen, den Anker verändern und cut&paste aber es
erscheint immer nur auf der Seite auf der ich es editiere.
Verändere ich den Anker auf "Als Zeichen" verschwindet das Textfeld aus dem Kopf und wird ans obere Ende des Textbereiches
verschoben. Wenn ich es nun ausschneide, dann den Kopf selektiere und einfüge - passiert garnichts - es erscheint kein
Textfeld beim einfügen - es gibt zwar einen Eintrag in der "Rückgängig-Liste" aber es passiert beim Einfügen nix.
Aber vielleicht komme ich auf einem anderen Weg zum Ziel. Ich habe das Textfeld eingebaut um dort per Makro einen Text
(eine Art Vorgangsnummer - also immer hochzählend) einzutragen. Textfeld deshalb, weil ich es dann per NAME und im Makro
per GetByName("NAME") ansprechen und editieren kann. Vielleicht funktioniert das ja acuh anders - mit einem Objekt das ich
in den Kopf setzen kann und trotzdem per Name ansprechen kann (ich habe versucht das mit einem Feldbefehl (Einfügen->Feldbefehl)
und da speziell mit dem Feldbefehl "Eingabefeld" zu bewerkstelligen, aber leider konnte ich dieses Feld nicht per Makro ansprechen.
Hat jemand eine Idee dazu?
Re: Benötige Hilfe, Kopfzeile & Textfeld
Verfasst: Do, 07.07.2011 14:41
von Brizzl
Nochmals Danke für den Tip mit dem Rahmen - das hat mich letzlich auf die Lösung gebracht. Ich habe mit
allen Mitteln versucht das Textfeld in den Rahmen zu positionieren - das ging - den Rahmen dann in den Kopf
zu setzen ging nicht - es ging immer nur eines Textfeld in den Rahmen ODER Rahmen in den Kopf.
Ich habe es jetzt so gelöst, dass ich anstelle des Textfeldes einfach den Rahmen benutze und dort per
Makro einen Text einsetze.
Code: Alles auswählen
Sub SetTextKalNrRahmen ( Text )
' Handle für Formularzugriff
formCursor = ThisComponent.Text.createTextCursor()
formCursor.gotoStart (false)
' alle Rahmen des Formulars holen
formFrames = ThisComponent.getTextFrames()
' durch die Rahmen iterieren biss der gewünscht Rahmen gefunden wurde
For i = 0 to formFrames.Count -1
formFrame = formFrames(i)
' dem gewünschten Rahmen den übergebenen Text zuweisen
If formFrame.Name = "Rahmen" Then formFrame.string = Text
Next i
End Sub
....
' dem Rahmen für die laufende Nummer den entsprechenden Text zuweisen
SetTextKalNrRahmen ( "lauf. Nummer.: " & LaufNr )
....
Das wird jetzt auf jeder Seite angezeigt.
Re: GELÖST: Benötige Hilfe, Kopfzeile & Textfeld
Verfasst: Do, 07.07.2011 15:57
von Brizzl
Hi,
kann man diese mit einem Namen ansprechen? Weiss nicht, wenn das ginge wäre es auch eine Möglichkeit anstelle eines Rahmens.
Grüße
Sascha