Difference between revisions of "NL/Documentation/BASIC Guide/Interface Overview"

From Apache OpenOffice Wiki
Jump to: navigation, search
(Index-Based Access to Subordinate Objects)
 
(One intermediate revision by the same user not shown)
Line 8: Line 8:
 
{{DISPLAYTITLE:Overzicht van enkele centrale interfaces}}
 
{{DISPLAYTITLE:Overzicht van enkele centrale interfaces}}
 
__NOTOC__
 
__NOTOC__
Sommige interfaces van {{OOo}} kunnen worden gevonden in vele delen van de {{OOo}} API. Zij definiëren reeksen van methoden voor abstracte taken welke kunnen worden toegepast voor verschillende problemen. Hier vindt u een overzicht van de meest voorkomende van deze interfaces.
+
Sommige interfaces van {{AOo}} kunnen worden gevonden in vele delen van de {{AOo}} API. Zij definiëren reeksen van methoden voor abstracte taken welke kunnen worden toegepast voor verschillende problemen. Hier vindt u een overzicht van de meest voorkomende van deze interfaces.
  
De herkomst van de objecten wordt op een later punt in deze gids verklaard. Op dit punt worden slechts enkele van de abstracte aspecten van objecten, waarvoor de {{OOo}} API sommige centrale interfaces verschaft, besproken.
+
De herkomst van de objecten wordt op een later punt in deze gids verklaard. Op dit punt worden slechts enkele van de abstracte aspecten van objecten, waarvoor de {{AOo}} API sommige centrale interfaces verschaft, besproken.
  
 
== Context-afhankelijke objecten maken ==
 
== Context-afhankelijke objecten maken ==
  
De {{OOo}} API verschaft twee opties voor het creëren van objecten. Eén kan worden gevonden in de functie <tt>createUnoService</tt>, vermeld aan het begin van dit hoofdstuk. <tt>createUnoService</tt> maakt een object dat universeel kan worden gebruikt. Zulke objecten en services zijn ook bekend als context-onafhankelijke services.
+
De {{AOo}} API verschaft twee opties voor het creëren van objecten. Eén kan worden gevonden in de functie <tt>createUnoService</tt>, vermeld aan het begin van dit hoofdstuk. <tt>createUnoService</tt> maakt een object dat universeel kan worden gebruikt. Zulke objecten en services zijn ook bekend als context-onafhankelijke services.
  
 
In aanvulling op de context-onafhankelijke services, zijn er ook context-afhankelijke services waarvan de objecten alleen handig zijn in samenhang met een ander object. Een tekenobject voor een werkbladdocument kan daarom bijvoorbeeld alleen bestaan in samenhang met dat ene document.
 
In aanvulling op de context-onafhankelijke services, zijn er ook context-afhankelijke services waarvan de objecten alleen handig zijn in samenhang met een ander object. Een tekenobject voor een werkbladdocument kan daarom bijvoorbeeld alleen bestaan in samenhang met dat ene document.
Line 24: Line 24:
 
Het tekenobject kan bijvoorbeeld als volgt worden gemaakt door gebruik van een object werkbladdocument:
 
Het tekenobject kan bijvoorbeeld als volgt worden gemaakt door gebruik van een object werkbladdocument:
  
<source lang="oobas">
+
<syntaxhighlight lang="oobas">
 
Dim RechthoekVorm As Object
 
Dim RechthoekVorm As Object
 
RechthoekVorm = _
 
RechthoekVorm = _
 
   Spreadsheet.createInstance("com.sun.star.drawing.RectangleShape")
 
   Spreadsheet.createInstance("com.sun.star.drawing.RectangleShape")
</source>
+
</syntaxhighlight>
  
 
Een sjabloon voor een alinea in een tekstdocument wordt op dezelfde manier gemaakt:  
 
Een sjabloon voor een alinea in een tekstdocument wordt op dezelfde manier gemaakt:  
  
<source lang="oobas">
+
<syntaxhighlight lang="oobas">
 
Dim Opmaakprofiel as Object
 
Dim Opmaakprofiel as Object
 
Opmaakprofiel = Textdocument.createInstance("com.sun.star.style.ParagraphStyle")
 
Opmaakprofiel = Textdocument.createInstance("com.sun.star.style.ParagraphStyle")
</source>
+
</syntaxhighlight>
  
 
== Benoemde toegang tot onderliggende objecten ==
 
== Benoemde toegang tot onderliggende objecten ==
Line 47: Line 47:
 
Een voorbeeld van het gebruik van <tt>XNameAccess</tt> wordt verschaft door het object <tt>sheets</tt> van een werkbladdocument. Het combineert alle bladen binnen het werkbladdocument. De individuele bladen worden benaderd vanuit het object <tt>Bladen</tt> met behulp van de methode <tt>getByName</tt> vanuit <tt>XNameAccess</tt>:
 
Een voorbeeld van het gebruik van <tt>XNameAccess</tt> wordt verschaft door het object <tt>sheets</tt> van een werkbladdocument. Het combineert alle bladen binnen het werkbladdocument. De individuele bladen worden benaderd vanuit het object <tt>Bladen</tt> met behulp van de methode <tt>getByName</tt> vanuit <tt>XNameAccess</tt>:
  
<source lang="oobas">
+
<syntaxhighlight lang="oobas">
 
Dim Bladen As Object
 
Dim Bladen As Object
 
Dim Blad As Object
 
Dim Blad As Object
Line 53: Line 53:
 
Bladen = Spreadsheet.Sheets
 
Bladen = Spreadsheet.Sheets
 
Blad = Bladen.getByName("Blad1")
 
Blad = Bladen.getByName("Blad1")
</source>
+
</syntaxhighlight>
  
 
De methode <tt>getElementNames</tt> verschaft een overzicht van de namen van alle elementen. Als resultaat geeft het een gegevensveld weer waarin de namen staan. Het volgende voorbeeld toont hoe alle namen van elementen van een werkbladdocument daardoor kunnen worden bepaald en weergegeven in een lus:  
 
De methode <tt>getElementNames</tt> verschaft een overzicht van de namen van alle elementen. Als resultaat geeft het een gegevensveld weer waarin de namen staan. Het volgende voorbeeld toont hoe alle namen van elementen van een werkbladdocument daardoor kunnen worden bepaald en weergegeven in een lus:  
  
<source lang="oobas">
+
<syntaxhighlight lang="oobas">
 
Dim Bladen As Object
 
Dim Bladen As Object
 
Dim BladNamen
 
Dim BladNamen
Line 68: Line 68:
 
   MsgBox BladNamen(I)
 
   MsgBox BladNamen(I)
 
Next I
 
Next I
</source>
+
</syntaxhighlight>
  
 
De methode <tt>hasByName</tt> van de interface <tt>XNameAccess</tt> onthult of een onderliggend object met een bepaalde naam bestaat binnen het basis-object. Het volgende voorbeeld geeft daarom een bericht weer dat de gebruiker informeert of het object <tt>Spreadsheet</tt> een blad bevat met de naam <tt>Blad1</tt>.
 
De methode <tt>hasByName</tt> van de interface <tt>XNameAccess</tt> onthult of een onderliggend object met een bepaalde naam bestaat binnen het basis-object. Het volgende voorbeeld geeft daarom een bericht weer dat de gebruiker informeert of het object <tt>Spreadsheet</tt> een blad bevat met de naam <tt>Blad1</tt>.
  
<source lang="oobas">
+
<syntaxhighlight lang="oobas">
 
Dim Bladen As Object
 
Dim Bladen As Object
  
Line 81: Line 81:
 
   MsgBox "Blad1 niet beschikbaar"
 
   MsgBox "Blad1 niet beschikbaar"
 
End If
 
End If
</source>
+
</syntaxhighlight>
  
 
=== Interface <tt>com.sun.star.container.XNameContainer</tt> ===
 
=== Interface <tt>com.sun.star.container.XNameContainer</tt> ===
Line 89: Line 89:
 
Het volgende is een praktisch voorbeeld hiervan. Het roept een tekstdocument aan, dat een object <tt>StyleFamilies</tt> bevat en gebruikt die om op zijn beurt de sjablonen voor alinea's (Alinea-opmaakprofielen) van het document beschikbaar te maken.
 
Het volgende is een praktisch voorbeeld hiervan. Het roept een tekstdocument aan, dat een object <tt>StyleFamilies</tt> bevat en gebruikt die om op zijn beurt de sjablonen voor alinea's (Alinea-opmaakprofielen) van het document beschikbaar te maken.
  
<source lang="oobas">
+
<syntaxhighlight lang="oobas">
 
Dim Opmaakprofielen As Object
 
Dim Opmaakprofielen As Object
 
Dim Alineaopmaakprofielen As Object
 
Dim Alineaopmaakprofielen As Object
Line 99: Line 99:
 
Alineaopmaakprofielen.replaceByName("GewijzigdOpmaakprofiel", NieuwOpmaakprofiel)   
 
Alineaopmaakprofielen.replaceByName("GewijzigdOpmaakprofiel", NieuwOpmaakprofiel)   
 
Alineaopmaakprofielen.removeByName("OudeOpmaakprofiel")             
 
Alineaopmaakprofielen.removeByName("OudeOpmaakprofiel")             
</source>
+
</syntaxhighlight>
  
 
De regel <tt>insertByName</tt> voegt het opmaakprofiel <tt>NieuwOpmaakprofiel</tt> in onder dezelfde naam in het object <tt>AlineaOpmaakprofielen</tt>. De regel <tt>replaceByName</tt> verandert het object achter <tt>GewijzigdOpmaakprofiel</tt> in <tt>NieuwOpmaakprofiel</tt>. Tenslotteverwijdert de aanroep <tt>removeByName</tt> het object achter <tt>OudeOpmaakprofiel</tt> uit <tt>AlineaOpmaakprofielen</tt>.
 
De regel <tt>insertByName</tt> voegt het opmaakprofiel <tt>NieuwOpmaakprofiel</tt> in onder dezelfde naam in het object <tt>AlineaOpmaakprofielen</tt>. De regel <tt>replaceByName</tt> verandert het object achter <tt>GewijzigdOpmaakprofiel</tt> in <tt>NieuwOpmaakprofiel</tt>. Tenslotteverwijdert de aanroep <tt>removeByName</tt> het object achter <tt>OudeOpmaakprofiel</tt> uit <tt>AlineaOpmaakprofielen</tt>.
Line 113: Line 113:
 
<tt>XIndexAccess</tt> verschaft de methoden <tt>getByIndex</tt> en <tt>getCount</tt> voor het aanroepen van de onderliggende objecten. <tt>getByIndex</tt> verschaft een object door middel van een bepaalde index. <tt>getCount</tt> geeft weer hoeveel objecten beschikbaar zijn.
 
<tt>XIndexAccess</tt> verschaft de methoden <tt>getByIndex</tt> en <tt>getCount</tt> voor het aanroepen van de onderliggende objecten. <tt>getByIndex</tt> verschaft een object door middel van een bepaalde index. <tt>getCount</tt> geeft weer hoeveel objecten beschikbaar zijn.
  
<source lang="oobas">
+
<syntaxhighlight lang="oobas">
 
Dim Bladen As Object
 
Dim Bladen As Object
 
Dim Blad As Object
 
Dim Blad As Object
Line 124: Line 124:
 
   ' Blad bewerken
 
   ' Blad bewerken
 
Next I
 
Next I
</source>
+
</syntaxhighlight>
  
Het voorbeeld toont een lus die één voor één door alle elementen van het werkblad gaat en een verwijzing voor elk bewaart in de object-variabele <tt>Blad</tt> . Bij Merk op dat, bij het werken met de indexen, <tt>getCount</tt> het aantal elementen teruggeeft. Echter, de elementen in <tt>getByIndex</tt> zijn genummerd beginnend met 0. De variabele voor het tellen van de lus loopt daarom van 0 tot en met <tt>getCount()-1</tt>.
+
Het voorbeeld toont een lus die één voor één door alle elementen van het werkblad gaat en een verwijzing voor elk bewaart in de object-variabele <tt>Blad</tt>. Merk op dat, bij het werken met de indexen, <tt>getCount</tt> het aantal elementen teruggeeft. Echter, de elementen in <tt>getByIndex</tt> zijn genummerd beginnend met 0. De variabele voor het tellen van de lus loopt daarom van 0 tot en met <tt>getCount()-1</tt>.
  
 
=== Interface <tt>com.sun.star.container.XIndexContainer</tt> ===
 
=== Interface <tt>com.sun.star.container.XIndexContainer</tt> ===
Line 132: Line 132:
 
De interface <tt>XIndexContainer</tt> verschaft de functies <tt>insertByIndex</tt> en <tt>removeByIndex</tt>. De parameters worden op dezelfde wijze gestructureerd als de overeenkomende functies in <tt>XNameContainer</tt>.
 
De interface <tt>XIndexContainer</tt> verschaft de functies <tt>insertByIndex</tt> en <tt>removeByIndex</tt>. De parameters worden op dezelfde wijze gestructureerd als de overeenkomende functies in <tt>XNameContainer</tt>.
  
== Iterative Access to Subordinate Objects ==
+
== Iteratieve toegang tot onderliggende objecten ==
  
In some instances, an object may contain a list of subordinate objects that cannot be addressed by either a name or an index. In these situations, the <tt>XEnumeration</tt> and <tt>XenumerationAccess</tt> interfaces are appropriate. They provide a mechanism through which all subordinate elements of an objects can be passed, step by step, without having to use direct addressing.  
+
In sommige gevallen kan een object een lijst bevatten van onderliggende objecten die niet kunnen worden benaderd door een naam of een index. In deze situaties zijn de interfaces <tt>XEnumeration</tt> en <tt>XenumerationAccess</tt> toe te passen. Zij verschaffen een techniek waardoor alle onderliggende elementen van objecten kunnen worden doorgegeven, stap voor stap, zonder directe adressering te gebruiken.
  
=== <tt>com.sun.star.container.XEnumeration</tt> and <tt>XenumerationAccess</tt> Interfaces ===
+
In sommige instanties zou een object een lijst met onderliggende objecten kunnen bevatten waartoe geen toegang kan worden verkregen op een naam of een index. In deze situaties zijn de interfaces toepasbaar. Zij verschaffen een mechanisme waardoor alle onderliggende elementen van een object kunnen worden gepasseerd, stap voor stap, zonder directe addressering te gebruiken.  
  
The basic object must provide the <tt>XEnumerationAccess</tt> interface, which contains only a <tt>createEnumeration</tt> method. This returns an auxiliary object, which in turn provides the <tt>XEnumeration</tt> interface with the <tt>hasMoreElements</tt> and <tt>nextElement</tt> methods. Through these, you then have access to the subordinate objects.
+
=== Interfaces <tt>com.sun.star.container.XEnumeration</tt> en <tt>XenumerationAccess</tt> ===
  
The following example steps through all the paragraphs of a text:
+
Het basisobject moet de interface <tt>XEnumerationAccess</tt> verschaffen, die alleen een methode <tt>createEnumeration</tt> bevat. Dit geeft een hulp-object weer, dat op zijn beurt de interface <tt>XEnumeration</tt> verschaft met de methoden <tt>hasMoreElements</tt> en <tt>nextElement</tt>. Hierdoor heeft u dan toegang tot de onderliggende objecten.
  
<source lang="oobas">
+
Het volgende voorbeeld stapt door alle alinea's van een tekst:
Dim ParagraphEnumeration As Object
+
Dim Paragraph As Object
+
  
ParagraphEnumeration = Textdoc.Text.createEnumeration
+
<syntaxhighlight lang="oobas">
 +
Dim AlineaNummering As Object
 +
Dim Alinea As Object
  
While ParagraphEnumeration.hasMoreElements()
+
AlineaNummering = Textdoc.Text.createEnumeration
  Paragraph = ParagraphEnumeration.nextElement()
+
Wend
+
</source>
+
  
The example first creates a <tt>ParagraphEnumeration</tt> auxiliary object. This gradually returns the individual paragraphs of the text in a loop. The loop is terminated as soon as the <tt>hasMoreElements</tt> method returns the <tt>False</tt> value, signaling that the end of the text has been reached.
+
While AlineaNummering.hasMoreElements()
 +
  Alinea = AlineaNummering.nextElement()
 +
Wend
 +
</syntaxhighlight>
  
 +
Het voorbeeld maakt eerst een hulp-object <tt>AlineaNummering</tt>. Dit geeft geleidelijk in een lus de individuele alinea's van de tekst weer. De lus wordt beëindigd zodra de methode <tt>hasMoreElements</tt> de waarde <tt>False</tt> weergeeft, wat aangeeft dat het einde van de tekst is bereikt.
 
   
 
   
 
{{InterWiki Languages BasicGuide|articletitle=Documentation/BASIC Guide/Interface Overview}}
 
{{InterWiki Languages BasicGuide|articletitle=Documentation/BASIC Guide/Interface Overview}}
 
{{PDL1}}
 
{{PDL1}}

Latest revision as of 16:17, 9 February 2021

Book.png


Sommige interfaces van Apache OpenOffice kunnen worden gevonden in vele delen van de Apache OpenOffice API. Zij definiëren reeksen van methoden voor abstracte taken welke kunnen worden toegepast voor verschillende problemen. Hier vindt u een overzicht van de meest voorkomende van deze interfaces.

De herkomst van de objecten wordt op een later punt in deze gids verklaard. Op dit punt worden slechts enkele van de abstracte aspecten van objecten, waarvoor de Apache OpenOffice API sommige centrale interfaces verschaft, besproken.

Context-afhankelijke objecten maken

De Apache OpenOffice API verschaft twee opties voor het creëren van objecten. Eén kan worden gevonden in de functie createUnoService, vermeld aan het begin van dit hoofdstuk. createUnoService maakt een object dat universeel kan worden gebruikt. Zulke objecten en services zijn ook bekend als context-onafhankelijke services.

In aanvulling op de context-onafhankelijke services, zijn er ook context-afhankelijke services waarvan de objecten alleen handig zijn in samenhang met een ander object. Een tekenobject voor een werkbladdocument kan daarom bijvoorbeeld alleen bestaan in samenhang met dat ene document.

Interface com.sun.star.lang.XMultiServiceFactory

Context-afhankelijke objecten worden normaal gesproken gemaakt door middel van een objectmethode, waar het object van afhankelijk is. De methode createInstance, welke wordt gedefinieerd in de interface XMultiServiceFactory, wordt speciaal gebruikt in de objecten document.

Het tekenobject kan bijvoorbeeld als volgt worden gemaakt door gebruik van een object werkbladdocument:

Dim RechthoekVorm As Object
RechthoekVorm = _
  Spreadsheet.createInstance("com.sun.star.drawing.RectangleShape")

Een sjabloon voor een alinea in een tekstdocument wordt op dezelfde manier gemaakt:

Dim Opmaakprofiel as Object
Opmaakprofiel = Textdocument.createInstance("com.sun.star.style.ParagraphStyle")

Benoemde toegang tot onderliggende objecten

De interfaces XNameAccess en XNameContainer worden gebruikt in objecten die onderliggende objecten bevatten, welke kunnen worden benaderd door een naam in een natuurlijke taal.

Terwijl XNameAccess toegang verleent tot de individuele objecten, neemt XNameContainer de invoeging, wijziging en verwijdering van elementen op zich.

Interface com.sun.star.container.XNameAccess

Een voorbeeld van het gebruik van XNameAccess wordt verschaft door het object sheets van een werkbladdocument. Het combineert alle bladen binnen het werkbladdocument. De individuele bladen worden benaderd vanuit het object Bladen met behulp van de methode getByName vanuit XNameAccess:

Dim Bladen As Object
Dim Blad As Object
 
Bladen = Spreadsheet.Sheets
Blad = Bladen.getByName("Blad1")

De methode getElementNames verschaft een overzicht van de namen van alle elementen. Als resultaat geeft het een gegevensveld weer waarin de namen staan. Het volgende voorbeeld toont hoe alle namen van elementen van een werkbladdocument daardoor kunnen worden bepaald en weergegeven in een lus:

Dim Bladen As Object
Dim BladNamen
Dim I As Integer
 
Bladen = Spreadsheet.Sheets
BladNamen = Bladen.getElementNames
 
For I=LBound(BladNamen) To UBound(BladNamen)
  MsgBox BladNamen(I)
Next I

De methode hasByName van de interface XNameAccess onthult of een onderliggend object met een bepaalde naam bestaat binnen het basis-object. Het volgende voorbeeld geeft daarom een bericht weer dat de gebruiker informeert of het object Spreadsheet een blad bevat met de naam Blad1.

Dim Bladen As Object
 
Bladen = Spreadsheet.Sheets
If Bladen.HasByName("Blad1") Then
  MsgBox "Blad1 beschikbaar"
Else
  MsgBox "Blad1 niet beschikbaar"
End If

Interface com.sun.star.container.XNameContainer

De interface XNameContainer behandelt het invoegen, verwijderen en wijzigen van onderliggende elementen in een basisobject. De verantwoordelijke functies zijn insertByName, removeByName en replaceByName.

Het volgende is een praktisch voorbeeld hiervan. Het roept een tekstdocument aan, dat een object StyleFamilies bevat en gebruikt die om op zijn beurt de sjablonen voor alinea's (Alinea-opmaakprofielen) van het document beschikbaar te maken.

Dim Opmaakprofielen As Object
Dim Alineaopmaakprofielen As Object
Dim NieuwOpmaakprofiel As Object   
 
Opmaakprofielen = Textdoc.StyleFamilies
Alineaopmaakprofielen = Opmaakprofielen.getByName("Alineaopmaakprofielen")
Alineaopmaakprofielen.insertByName("NieuwOpmaakprofiel", NieuwOpmaakprofiel)      
Alineaopmaakprofielen.replaceByName("GewijzigdOpmaakprofiel", NieuwOpmaakprofiel)   
Alineaopmaakprofielen.removeByName("OudeOpmaakprofiel")

De regel insertByName voegt het opmaakprofiel NieuwOpmaakprofiel in onder dezelfde naam in het object AlineaOpmaakprofielen. De regel replaceByName verandert het object achter GewijzigdOpmaakprofiel in NieuwOpmaakprofiel. Tenslotteverwijdert de aanroep removeByName het object achter OudeOpmaakprofiel uit AlineaOpmaakprofielen.

Op index gebaseerde toegang tot onderliggende objecten

De interfaces XIndexAccess en XIndexContainer worden gebruikt in objecten die onderliggende objecten bevatten en die benaderd kunnen worden via een index.

XIndexAccess verschaft de methoden om toegang te krijgen tot individuele objecten. XIndexContainer verschaft methoden voor het invoegen en verwijderen van elementen.

Interface com.sun.star.container.XIndexAccess

XIndexAccess verschaft de methoden getByIndex en getCount voor het aanroepen van de onderliggende objecten. getByIndex verschaft een object door middel van een bepaalde index. getCount geeft weer hoeveel objecten beschikbaar zijn.

Dim Bladen As Object
Dim Blad As Object
Dim I As Integer
 
Bladen = Spreadsheet.Sheets
 
For I = 0 to Bladen.getCount() - 1
  Blad = Bladen.getByIndex(I)
  ' Blad bewerken
Next I

Het voorbeeld toont een lus die één voor één door alle elementen van het werkblad gaat en een verwijzing voor elk bewaart in de object-variabele Blad. Merk op dat, bij het werken met de indexen, getCount het aantal elementen teruggeeft. Echter, de elementen in getByIndex zijn genummerd beginnend met 0. De variabele voor het tellen van de lus loopt daarom van 0 tot en met getCount()-1.

Interface com.sun.star.container.XIndexContainer

De interface XIndexContainer verschaft de functies insertByIndex en removeByIndex. De parameters worden op dezelfde wijze gestructureerd als de overeenkomende functies in XNameContainer.

Iteratieve toegang tot onderliggende objecten

In sommige gevallen kan een object een lijst bevatten van onderliggende objecten die niet kunnen worden benaderd door een naam of een index. In deze situaties zijn de interfaces XEnumeration en XenumerationAccess toe te passen. Zij verschaffen een techniek waardoor alle onderliggende elementen van objecten kunnen worden doorgegeven, stap voor stap, zonder directe adressering te gebruiken.

In sommige instanties zou een object een lijst met onderliggende objecten kunnen bevatten waartoe geen toegang kan worden verkregen op een naam of een index. In deze situaties zijn de interfaces toepasbaar. Zij verschaffen een mechanisme waardoor alle onderliggende elementen van een object kunnen worden gepasseerd, stap voor stap, zonder directe addressering te gebruiken.

Interfaces com.sun.star.container.XEnumeration en XenumerationAccess

Het basisobject moet de interface XEnumerationAccess verschaffen, die alleen een methode createEnumeration bevat. Dit geeft een hulp-object weer, dat op zijn beurt de interface XEnumeration verschaft met de methoden hasMoreElements en nextElement. Hierdoor heeft u dan toegang tot de onderliggende objecten.

Het volgende voorbeeld stapt door alle alinea's van een tekst:

Dim AlineaNummering As Object
Dim Alinea As Object
 
AlineaNummering = Textdoc.Text.createEnumeration
 
While AlineaNummering.hasMoreElements()
  Alinea = AlineaNummering.nextElement()
Wend

Het voorbeeld maakt eerst een hulp-object AlineaNummering. Dit geeft geleidelijk in een lus de individuele alinea's van de tekst weer. De lus wordt beëindigd zodra de methode hasMoreElements de waarde False weergeeft, wat aangeeft dat het einde van de tekst is bereikt.


Content on this page is licensed under the Public Documentation License (PDL).
Personal tools