witam.
w arkuszu kalkulacyjnym użyłem makra nasłuchu dla zakresu komórek:
sub Wlacz_nasluch()
oSheet=ThisComponent.Sheets.getByIndex(2)
zakres=oSheet.getCellRangeByName("B4:B1004")
oListener = createUnoListener("OOO_","com.sun.star.chart.XChartDataChangeEventListener")
zakres.addChartDataChangeEventListener(oListener)
end sub
sub OOO_chartDataChanged()
'procedura....
end sub
wszystko działa jak należy, jednak po zakończeniu działań na komórkach zakresu nie jestem w stanie wyłączyć nasłuchu.
użyłem poniższego makra jednak nasłuch w komórkach nadal działa...
sub Wylacz_nasluch()
oSheet=ThisComponent.Sheets.getByIndex(2)
zakres=oSheet.getCellRangeByName("B4:B1004")
oListener = createUnoListener("OOO_","com.sun.star.chart.XChartDataChangeEventListener")
zakres.removeChartDataChangeEventListener(oListener)
end sub
proszę o pomoc jak zakończyć nasłuch i móc korzystać z komórek zakresu bez efektu nasłuchu.
aoo 4.1.2 win xp/7/vista/8/10
nasłuch komórki raz jeszcze...
nasłuch komórki raz jeszcze...
Apache OpenOffice 4.1.5 na Windows 10
Re: nasłuch komórki raz jeszcze...
Kod: Zaznacz cały
global oListener as object
global zakres as object
sub Wlacz_nasluch()
if isNull(oListener)then
oSheet = ThisComponent.Sheets.getByIndex(0)
zakres = oSheet.getCellRangeByName("B4:B1004")
oListener = createUnoListener("OOO_","com.sun.star.chart.XChartDataChangeEventListener")
zakres.addChartDataChangeEventListener(oListener)
end if
end sub
sub OOO_chartDataChanged(oEvent)
print "yes ?"
end sub
sub StopListener
if not isNull(oListener) then
zakres.removeChartDataChangeEventListener(oListener)
oListener = nothing
end if
end sub
'*******************************************************
'w celu wyłączenia nasłuchu uruchom procedurę poniższą
sub OOO_Disposing(oEvent)
Print "no ?"
StopListener
end sub
'*******************************************************
LibreOffice 5.1.2.2 Ubuntu 16 LTS
Re: nasłuch komórki raz jeszcze...
[Solved] dziękuję bardzo belstar, działa jak należy
Apache OpenOffice 4.1.5 na Windows 10