Textfeld in Draw markieren

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

Moderator: Moderatoren

RirA
Beiträge: 5
Registriert: Di, 30.09.2008 19:06

Textfeld in Draw markieren

Beitrag von RirA »

Ich möchte in Draw das von mir erzeugte Textfeld nach der Ausgabe gleich markiert haben.
In OOo erkennt man das entweder daran, dass die grünen Randpunkte zu sehen sind, oder aber, was mir auch Recht wäre, dass der Textcursor gleich am Ende des eingesetzten Texts blinken würde. D.h. nach Ausführen des Makros könnte man gleich weiter Text in das Feld schreiben.
Im Writer geht das ja anscheinend mit ViewCursor oder Textcursor, aber das scheint in Draw nicht zu klappen...
Kann jemand helfen?
Vielen Dank!

Hier mein Code:

Code: Alles auswählen

Sub TextEinfuegen

Dim Doc As Object
Dim Page As Object
Dim RectangleShape As Object
Dim Point As New com.sun.star.awt.Point
Dim Size As New com.sun.star.awt.Size
Dim oViewCur as Object

Point.x = 2000 rem Position im Dokument
Point.y = 1000
Size.Width = 6000 rem Feldgröße
Size.Height = 6000

Doc = ThisComponent rem böse! -> darf nicht fehlen
Page = Doc.drawPages(0) rem irgendwas mit der Seite(nanzahl)?

RectangleShape = Doc.createInstance("com.sun.star.drawing.RectangleShape")
RectangleShape.Size = Size rem durch Weglassen kommt nur Text zum Vorschein, ohne Rahmen
RectangleShape.Position = Point
Page.add(RectangleShape)
RectangleShape.String = "Text Text Text" rem der Text
RectangleShape.TextVerticalAdjust = com.sun.star.drawing.TextVerticalAdjust.TOP rem Textausrichtung
RectangleShape.TextHorizontalAdjust = com.sun.star.drawing.TextHorizontalAdjust.LEFT

rem RectangleShape.TextFitToSize = com.sun.star.drawing.TextFitToSizeType.PROPORTIONAL rem passt Text an Rechteck an

rem RectangleShape.TextMaximumFrameHeight = 1000
rem RectangleShape.TextMaximumFrameWidth = 1000
rem RectangleShape.TextMinimumFrameHeight = 1000
rem RectangleShape.TextMinimumFrameWidth = 1000

rem RectangleShape.TextFitToSize = TRUE
RectangleShape.TextContourFrame = TRUE
RectangleShape.TextAutoGrowWidth = FALSE
RectangleShape.TextAutoGrowHeight = TRUE rem WIESO GEHT DAS NICHT?!

RectangleShape.TextLeftDistance = 1 rem Textdistanz
RectangleShape.TextRightDistance = 1
RectangleShape.TextUpperDistance = 1
RectangleShape.TextLowerDistance = 1000
RectangleShape.CharFontName = "Arial"
RectangleShape.CharHeight="40" rem Schriftgröße
RectangleShape.charcolor=&H000000 rem Farbe XRedGreenBlue
rem RectangleShape.CharUnderline=com.sun.star.awt.FontUnderline.SINGLE rem Schriftstil
rem RectangleShape.CharWeight=com.sun.star.awt.FontWeight.BOLD
rem RectangleShape.CharPosture=com.sun.star.awt.FontSlant.ITALIC

rem Hintergrund & Grenze
RectangleShape.FillStyle = com.sun.star.drawing.FillStyle.SOLID
RectangleShape.FillTransparence = 100
RectangleShape.FillColor = RGB(255,0,0)
RectangleShape.LineColor = RGB(255,255,255)
RectangleShape.LineTransparence = 100
RectangleShape.LineWidth = 1


rem RectangleShape.LineJoint = com.sun.star.drawing.LineJoint.MITER   
rem RectangleShape.LineStyle = com.sun.star.drawing.LineStyle.SOLID

End Sub
RirA
Beiträge: 5
Registriert: Di, 30.09.2008 19:06

Re: Textfeld in Draw markieren

Beitrag von RirA »

Vielleicht habe ich mich zu kompliziert ausgedrückt:
Ich will einfach das Feld, das erzeugt wird, im Vordergrund haben - das muss doch eigentlich möglich sein, oder?

Bitte helft mir. :-)
Antworten