[OPGELOST] Macro's lijnopmaak (Calc / Draw)

GerardV
Berichten: 68
Lid geworden op: za sep 12, 2009 10:20 pm
Locatie: Nederland

[OPGELOST] Macro's lijnopmaak (Calc / Draw)

Bericht door GerardV »

Hoi ik ben vrij nieuw met Open Office en ook al gebruik ik het slechts een paar dagen, ben ik eigenlijk behoorlijk warm aan het lopen.
Nou loop ik echter wel aan tegen een aantal dingen, mijn huidige spreadsheets zijn gemaakt in Excel2003 en bevatten nog al eens VBA.
Ik heb al wel de Sun handleiding (StaOffice 8 Programming guide for Basic) gevonden, maar kom er bijvoorbeeld niet uit hoe ik een lijn kan tekenen die opgemaakt is als Dash.

Dit is wat ik heb:

Code: Selecteer alles

Sub Lijn_tekenen

Dim Doc As Object
Dim Page As Object
Dim LineShape As Object
Dim Point As New com.sun.star.awt.Point
Dim Size As New com.sun.star.awt.Size

Doc = StarDesktop.CurrentComponent
Page = Doc.drawPages(1)
 
 
 
	Point.x = 1000
	Point.y = 1000
	Size.Width = 20000
	Size.Height = 0
 

	LineShape = Doc.createInstance("com.sun.star.drawing.LineShape")
	with LineShape
		.Size = Size
		.Position = Point
	
		.LineStyle = com.sun.star.drawing.LineStyle.DASH
	  
		.LineWidth = 40
		.LineColor = RGB(255, 0, 0)
	end with

Page.add(LineShape)


End Sub
Krijg echter niet echt een gestippelde lijn te zien...
Kan iemand mij verder helpen en heeft iemand een tip voor een goede uitleg voor BASIC
De WIKI is niet altijd even duidelijk....

bvd
Gerard
Laatst gewijzigd door GerardV op zo sep 13, 2009 8:08 pm, 1 keer totaal gewijzigd.
OpenOffice 3.1 op Windows Vista
Nog niet gehinderd door enige vorm van kennis....
RPG
Berichten: 4726
Lid geworden op: wo apr 15, 2009 1:01 am
Locatie: Apeldoorn, Nederland

Re: Macro's lijnopmaak

Bericht door RPG »

Hallo

Misschien heb je iets aan deze links
http://api.openoffice.org/docs/common/r ... rties.html
http://api.openoffice.org/docs/common/r ... eDash.html
http://api.openoffice.org/docs/common/r ... le-ix.html

OpenOffice.org is niet eenvoudig als je overstapt van MSO. Het programmeer model is nogal verschillend.
Ik weet bijna niets van de API die gaat over spreadsheets.

Als ik goed heb begrepen gaat de APi van MSO over object en volg je die lijn. Bij OOo is het meer service en interfaces.
Overigens zie ik wel een dash getekende lijn als ik het uitvergroot tot 250 %

Groeten Romke
LibreOffice 24.2.4.2 op openSUSE Leap 15.6
GerardV
Berichten: 68
Lid geworden op: za sep 12, 2009 10:20 pm
Locatie: Nederland

Re: Macro's lijnopmaak

Bericht door GerardV »

Romke,

Bedankt voor je reactie. Deze links heb ik al bezocht, maar daar werd ik op dat moment niet echt wijzer uit.
Het is inderdaad heel erg wennen als je MSO gewend bent.

Ben er inmiddels achter wat ik fout deed / hoe het wel kan....:

Code: Selecteer alles

Sub DrawLine
Dim Doc As Object
Dim Page As Object
Dim LineShape As Object
Dim Point As New com.sun.star.awt.Point
Dim Size As New com.sun.star.awt.Size
Doc = ThisComponent
Page = Doc.drawPages(0)
Point.x = 1000
Point.y = 1000
Size.Width = 20000
Size.Height = 0
LineShape = Doc.createInstance("com.sun.star.drawing.LineShape")
LineShape.Size = Size
LineShape.Position = Point
Page.add(LineShape)
LineShape.LineWidth = 40
LineShape.LineColor = RGB(255, 0, 0)
dim aLineDash as new com.sun.star.drawing.LineDash
aLineDash.Style = com.sun.star.drawing.DashStyle.ROUND
aLineDash.Dots = 1
aLineDash.DotLen = 150
aLineDash.Dashes = 1
aLineDash.DashLen = 500
aLineDash.Distance = 500
LineShape.LineDash = aLineDash
LineShape.LineStyle = com.sun.star.drawing.LineStyle.DASH
End Sub 
OpenOffice 3.1 op Windows Vista
Nog niet gehinderd door enige vorm van kennis....
Plaats reactie