CreateUnoListener funtzioa

Listener instantzia sortzen du.

Hainbat Uno interfazeren bidez Listener-ak erregistra ditzakezu Listener interfaze berezi batean. Hala, gertaera jakinak entzun ditzakezu eta Listener metodo egokiari deitu diozaiokezu. CreateUnoListener funtzioa deitutako Listener interfazearen zain egoten da, eta gero, interfaze horri hark onartzen duen objektua pasatzen dio. Orduan, objektua metodora pasatzen da Listener erregistratzeko.

Sintaxia:

oEntzulea = CreateUnoListener( AurrizkiIzena, EntzuleInterfazeIzena )

Adibidea:

Ondorengo adibidea Basic liburutegi-objektuan oinarrituta dago.

Dim oListener

oListener = CreateUnoListener( "ContListener_","com.sun.star.container.XContainerListener" )

CreateUnoListener metodoak bi parametro behar ditu. Lehenengo parametroa aurrizki bat da, eta behean azaltzen da xehetasunez. Bigarrena erabili nahi duzun Listener interfazearen erabat kualifikatutako izena da.

Listener igorle-objektuari gehitu behar zaio. Horretarako, dagokion metodoari deitu behar zaio. Metodo horiek beti "addZerbaitListener" eredua edukitzen dute. "Zerbait" Listener interfaze mota da, 'X'rik gabe. Adibide honetan, addContainerListener metodoari deitzen zaio XcontainerListener erregistratzeko:

Dim oLib

oLib = BasicLibraries.Library1 ' Library1ek lehendik egon behar du!

oLib.addContainerListener( oEntzulea ) ' Erregistratu Listener-a

Listener orain erregistratuta dago. Gertaera bat gertatzen denean, dagokion Listener-ak dagokion metodoari deitzen dio com.sun.star.container.XContainerListener interfazetik.

Aurrizkiak erregistratutako Listener-ei deitzen die Basic azpierrutinetatik. Basic exekuzio-garaiko sistemak "PrefixListenerMethode" izena duten Basic azpierrutinak edo funtzioak bilatzen ditu, eta aurkitutakoan deitu egiten die. Bestela, exekuzio-errorea gertatuko da.

Adibide honetan, Listener interfazea erabiltzen da metodo hauei deitzeko:

Adibide honetan, aurrizkia ContListener_ da. Beraz, azpierrutina hauek inplementatu behar dira Basic-en:

Gertaera bati buruzko informazioa duen gertaeraren egitura mota Listener mota guztientzat egoten da. Listener metodo bati deitzean, gertaera horren instantzia metodora pasatzen da parametro gisa. Basic-eko Listener metodoek gertaera-objektu horiei ere deitu diezaiekete, baldin eta parametro egokia pasatzen bada Sub deklarazioan. Adibidez:

Sub ContListener_disposing( oEvent )

    MsgBox "disposing"

    MsgBox oEvent.Dbg_Properties

End Sub

 

Sub ContListener_elementInserted( oEvent )

    MsgBox "elementInserted"

    MsgBox oEvent.Dbg_Properties

End Sub

 

Sub ContListener_elementRemoved( oEvent )

    MsgBox "elementRemoved"

    MsgBox oEvent.Dbg_Properties

End Sub

 

Sub ContListener_elementReplaced( oEvent )

    MsgBox "elementReplaced"

    MsgBox oEvent.Dbg_Properties

End Sub

Gertaera-objektu baten parametroa ez duzu sartu behar objektu hori erabiltzen ez bada:

' Sub disposing-en inplementazio minimoa

Sub ContListener_disposing

End Sub

Abisu-ikonoa

Listener metodoak beti inplementatu behar dira Basic exekuzio-errorerik ez gertatzeko.