Difference between revisions of "API/Samples/StarBasic/Impress/Insert a Chart"
From Apache OpenOffice Wiki
(Compressed the summary) |
m |
||
(4 intermediate revisions by 3 users not shown) | |||
Line 7: | Line 7: | ||
|} | |} | ||
− | < | + | <syntaxhighlight lang="oobas"> |
Sub Main | Sub Main | ||
+ | ' get the first slide | ||
Set oPage = ThisComponent.getDrawPages().getByIndex(0) | Set oPage = ThisComponent.getDrawPages().getByIndex(0) | ||
+ | ' create an OLE2Shape | ||
Set oOLEShape = ThisComponent.createInstance( "com.sun.star.drawing.OLE2Shape" ) | Set oOLEShape = ThisComponent.createInstance( "com.sun.star.drawing.OLE2Shape" ) | ||
' important: first add the shape | ' important: first add the shape | ||
oPage.add( oOLEShape ) | oPage.add( oOLEShape ) | ||
+ | |||
+ | Dim oPos As New com.sun.star.awt.Point | ||
+ | Dim oSize As New com.sun.star.awt.Size | ||
+ | oPos.X = 0 | ||
+ | oPos.Y = 0 | ||
+ | oSize.Width = 8000 | ||
+ | oSize.Height = 7000 | ||
+ | oOLEShape.Size = oSize | ||
+ | oOLEShape.Position = oPos | ||
− | ' make the OLE object a chart | + | ' then make the OLE object a chart. The class-id is for charts, use exactly this one |
oOLEShape.CLSID = "12dcae26-281f-416f-a234-c3086127382e" | oOLEShape.CLSID = "12dcae26-281f-416f-a234-c3086127382e" | ||
+ | ' get the chart's model for modification | ||
Set oChartModel = oOLEShape.Model | Set oChartModel = oOLEShape.Model | ||
If Not IsNull( oChartModel ) Then | If Not IsNull( oChartModel ) Then | ||
+ | ' e.g., Set a main title | ||
oChartModel.HasMainTitle = True | oChartModel.HasMainTitle = True | ||
oChartModel.Title.String = "Created via UNO API" | oChartModel.Title.String = "Created via UNO API" | ||
EndIf | EndIf | ||
End Sub | End Sub | ||
− | </ | + | </syntaxhighlight> |
[[Category:API]] | [[Category:API]] | ||
[[Category:Samples]] | [[Category:Samples]] | ||
Line 30: | Line 43: | ||
[[Category:Impress]] | [[Category:Impress]] | ||
[[Category:Draw]] | [[Category:Draw]] | ||
+ | [[Category:Chart]] |
Latest revision as of 17:07, 30 January 2021
Description: | Create a new Chart object on a slide of a presentation or the page of a draw document. | Programming Language: | StarBasic | Author: | Björn Milcke, 2007 |
Sub Main ' get the first slide Set oPage = ThisComponent.getDrawPages().getByIndex(0) ' create an OLE2Shape Set oOLEShape = ThisComponent.createInstance( "com.sun.star.drawing.OLE2Shape" ) ' important: first add the shape oPage.add( oOLEShape ) Dim oPos As New com.sun.star.awt.Point Dim oSize As New com.sun.star.awt.Size oPos.X = 0 oPos.Y = 0 oSize.Width = 8000 oSize.Height = 7000 oOLEShape.Size = oSize oOLEShape.Position = oPos ' then make the OLE object a chart. The class-id is for charts, use exactly this one oOLEShape.CLSID = "12dcae26-281f-416f-a234-c3086127382e" ' get the chart's model for modification Set oChartModel = oOLEShape.Model If Not IsNull( oChartModel ) Then ' e.g., Set a main title oChartModel.HasMainTitle = True oChartModel.Title.String = "Created via UNO API" EndIf End Sub