Scrittura delle macro senza l'utilizzo del registratore

From Apache OpenOffice Wiki
< IT‎ | Documentation‎ | OOo3 User Guides‎ | Getting Started
Revision as of 16:46, 20 October 2010 by Scaligero (Talk | contribs)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search



Gli esempi raccolti in questo capitolo sono stati creati utilizzando il registratore macro e il gestore di eventi. Potete anche scrivere macro che accedono direttamente agli oggetti che sono inclusi in OpenOffice.org. In altre parole, potete manipolare direttamente un documento.

Manipolare direttamente gli oggetti interni di OpenOffice.org è un argomento avanzato che va oltre gli scopi di questo capitolo. Tuttavia potete vederne il funzionamento tramite un piccolo esempio.

Listato 4: Aggiungere il testo "Ciao" alla fine del documento corrente.

 Sub AggiungiCiao
   Dim oDoc
   Dim sTextService$
   Dim oCurs
   
   REM ThisComponent fa riferimento al documento attualmente attivo.
   oDoc = ThisComponent
 
   REM Verifica che si tratti di un documento di testo  
   sTextService = "com.sun.star.text.TextDocument"
   If NOT oDoc.supportsService(sTextService) Then
     MsgBox "Questa macro funziona solamente con documenti di testo"
     Exit Sub
   End If
 
   REM Prende il controllo del cursore del controller corrente.
   oCurs = oDoc.currentController.getViewCursor()
 
   REM Muove il cursore alla fine del documento
   oCurs.gotoEnd(False)
 
   REM Inserisce il testo "Ciao" alla fine del documento
   oCurs.Text.insertString(oCurs, "Ciao", False)  
 End Sub

Content on this page is licensed under the Creative Common Attribution 3.0 license (CC-BY).
Personal tools