Pulsante nella barra strumenti
Pulsante nella barra strumenti
Salve,
In un pulsante inserito nella barra strumenti si riesce ad avere nessun controllo Abilitato/Disabilitato
La macro nel file allegato funziona, serve per spostarsi tra i fogli
La mia richiesta è solo per estetica/didattica, per fare in modo che se mi trovo nel primo foglio si disabiliti il pulsante "Prec" come da immagine
In un pulsante inserito nella barra strumenti si riesce ad avere nessun controllo Abilitato/Disabilitato
La macro nel file allegato funziona, serve per spostarsi tra i fogli
La mia richiesta è solo per estetica/didattica, per fare in modo che se mi trovo nel primo foglio si disabiliti il pulsante "Prec" come da immagine
- Allegati
-
- nascondiFogli.ods
- (39.64 KiB) Scaricato 57 volte
-
- 230306-170850.png (26.19 KiB) Visto 2812 volte
Ultima modifica di epico il domenica 2 aprile 2023, 23:24, modificato 1 volta in totale.
OpenOffice 4.1 su Win10
Re: Pulsante nella barra strumenti
Dalle risposte ricevute presumo non ci sia una soluzione
Spero di essere più fortunato la prossima
Spero di essere più fortunato la prossima
OpenOffice 4.1 su Win10
Re: Pulsante nella barra strumenti
Magari la soluzione c'è, ma non un utente del forum che la conosce.
-------------------
Libre Office 7.5.3.2 su Windows 11
allega un file di esempio, guadagnerai tempo tu e lo farai risparmiare a chi ti aiuta
Libre Office 7.5.3.2 su Windows 11
allega un file di esempio, guadagnerai tempo tu e lo farai risparmiare a chi ti aiuta
Re: Pulsante nella barra strumenti
"Magari la soluzione c'è, ma non un utente del forum che la conosce."
Probabilmente la richiesta in forma didattica potrebbe essere interessante.
Cercando nel lungo elenco dei GetProcessServiceManager.getAvailableServiceNames del Process Service Manager mi sono imbattuto nel com.sun.star.frame.ToolbarController.
Andando sulle API:
ToolbarController Service Reference
is an abstract service for a component which offers a more complex user interface to users within a toolbar.
A generic toolbar function is represented as a button which has a state (enabled,disabled and selected, not selected). A toolbar controller can be added to a toolbar and provide information or functions within a more sophisticated user interface.
A typical example for toolbar controller is the font chooser within the toolbar. It provides all available fonts in a dropdown box and shows the current chosen font.
Altra API e' ToolbarControllerFactory, mentre non si trova esposta nelle API com.sun.star.ui.ToolBarFactory.
Probabilmente bisognerebbe trovare il contenitore di tutte le Toolbar, ciclare o getByName per avere la propria toolbar, trovare i pulsanti e quindi applicare il relativo stato.
Spero che qualcuno che ne sa molto più di me possa dare un interessante input.
Un caro saluto a tutti
Probabilmente la richiesta in forma didattica potrebbe essere interessante.
Cercando nel lungo elenco dei GetProcessServiceManager.getAvailableServiceNames del Process Service Manager mi sono imbattuto nel com.sun.star.frame.ToolbarController.
Andando sulle API:
ToolbarController Service Reference
is an abstract service for a component which offers a more complex user interface to users within a toolbar.
A generic toolbar function is represented as a button which has a state (enabled,disabled and selected, not selected). A toolbar controller can be added to a toolbar and provide information or functions within a more sophisticated user interface.
A typical example for toolbar controller is the font chooser within the toolbar. It provides all available fonts in a dropdown box and shows the current chosen font.
Altra API e' ToolbarControllerFactory, mentre non si trova esposta nelle API com.sun.star.ui.ToolBarFactory.
Probabilmente bisognerebbe trovare il contenitore di tutte le Toolbar, ciclare o getByName per avere la propria toolbar, trovare i pulsanti e quindi applicare il relativo stato.
Spero che qualcuno che ne sa molto più di me possa dare un interessante input.
Un caro saluto a tutti
Nicola con LibreOffice 7.1 (x64) su Windows 11
Re: Pulsante nella barra strumenti
Condivido la richiesta
Spero che qualcuno che ne sa molto più di me possa dare un interessante input.
OpenOffice 4.1 su Win10
Re: Pulsante nella barra strumenti
Salve
continuando a cercare sull'argomento, poiché sviluppare codice è un po come fare il detective, ho trovato una cosa che mi sembra interessante:
[Solved] Macro to Open a Toolbar I just created?
https://forum.openoffice.org/en/forum/v ... 904aa5249b
da hanya :
Ovviamente ora il passo successivo è far girare il codice in modalità debug e vedere gli oggetti che genera per poterli gestire.
Invito chi può a dare ulteriori stimoli alla discussione.
Trovo anche "5.44.1.1. My first toolbar" pag. 132 in Useful Macro Information For OpenOffice.org By Andrew Pitonyak che studiandolo può dare utili informazioni.
continuando a cercare sull'argomento, poiché sviluppare codice è un po come fare il detective, ho trovato una cosa che mi sembra interessante:
[Solved] Macro to Open a Toolbar I just created?
https://forum.openoffice.org/en/forum/v ... 904aa5249b
da hanya :
Codice: Seleziona tutto
Sub ToolbarTest
oDoc = ThisComponent
sResId = FindToolbar(oDoc, "Controls")
if not isnull(sResId) then
oManager = oDoc.getCurrentController().getFrame().LayoutManager
oManager.createElement(sResId)
oManager.showElement(sResId)
end if
End Sub
Function FindToolbar(oDoc, sName As String)
oManager = oDoc.getUIConfigurationManager()
aElements = oManager.getUIElementsInfo(_
com.sun.star.ui.UIElementType.TOOLBAR)
itemset = nothing
for i = 0 to ubound(aElements) step 1
a = aElements(i)
if GetPropertyValueByName(a, "UIName") = sName then
itemset = a
exit for
end if
next
if not isnull(itemset) then
FindToolbar = GetPropertyValueByName(itemset, "ResourceURL")
else
FindToolbar = nothing
end if
End Function
Function GetPropertyValueByName(aElements, sName) As Variant
found = nothing
for i = 0 to ubound(aElements) step 1
if aElements(i).Name = sName then
found = aElements(i).Value
end if
next
GetPropertyValueByName = found
End Function
Invito chi può a dare ulteriori stimoli alla discussione.
Trovo anche "5.44.1.1. My first toolbar" pag. 132 in Useful Macro Information For OpenOffice.org By Andrew Pitonyak che studiandolo può dare utili informazioni.
Nicola con LibreOffice 7.1 (x64) su Windows 11
Re: Pulsante nella barra strumenti
Tramite LayoutManager riesco ad abilitare e disabilitare la barra personalizzata con tutti i comandi che ne fanno parte, ma non dei singoli elementi, anche se si riesce ad accedere alle loro proprietà, sicuramente mi sfugge qualcosa, ad ogni modo ho aggirato l'ostacolo anche se non mi piace l'attuale soluzione , creando due barre personalizzate, una per il comando prec e l'altra per il comando succ.
All'apertura del file i pulsanti sono entrambi abilitati ma poi cliccando su di essi si disabilita quello cliccato e viceversa.
All'apertura del file i pulsanti sono entrambi abilitati ma poi cliccando su di essi si disabilita quello cliccato e viceversa.
- Allegati
-
- nascondiFogli_gaetano.ods
- (85.13 KiB) Scaricato 64 volte
-
- prec_succ.PNG (2.38 KiB) Visto 2695 volte
LibreOffice 7.2.2.2 windows 10
Openoffice 4.1.13 su windows 10
Openoffice 4.1.13 su windows 10
Re: Pulsante nella barra strumenti
Buonasera a tutti. Ho passato alcune ore nei giorni scorsi su questo quesito. Ho provato un pò tutte le proprietà e i metodi che sono riuscito a vedere con la macro xray, ma sono riuscito solo a disabilitare tutto il toolbar. Dei singoli elementi sono solo riuscito a scoprire le proprietà quali nome, dimensione dell'icona etc... senza possibilità di modificare i parametri.
Ottimo stratagemma quello di @Gaetanopr
Ottimo stratagemma quello di @Gaetanopr
LibO:Versione: 6.2.8.2
Build ID: 1:6.2.8~rc2-0ubuntu0.16.04.1- 32-bit
-
Se risolvi:
1. Condividi la soluzione qui con noi
2. Metti [Risolto] al titolo del primo messaggio come spiegato qui
Build ID: 1:6.2.8~rc2-0ubuntu0.16.04.1- 32-bit
-
Se risolvi:
1. Condividi la soluzione qui con noi
2. Metti [Risolto] al titolo del primo messaggio come spiegato qui
Re: Pulsante nella barra strumenti
Mi scuso per il ritardo del riscontro, ma il file l'ho completato solo adesso.
Ho inserito 2 file uno per OpenOf e uno per LibreOf, perchè l'effetto visivo abilitato/disabilitato si ha solo con le icone e non sono compatibili tra i due programmi.
Per il momento mi accontento, però non metto RISOLTO, sperando in ulteriori sviluppi.
Grazie a tutto il forum
Ho inserito 2 file uno per OpenOf e uno per LibreOf, perchè l'effetto visivo abilitato/disabilitato si ha solo con le icone e non sono compatibili tra i due programmi.
Per il momento mi accontento, però non metto RISOLTO, sperando in ulteriori sviluppi.
Grazie a tutto il forum
- Allegati
-
- nascondiFogli_2-LibreO.ods
- (65.19 KiB) Scaricato 62 volte
-
- nascondiFogli_2-OpenO.ods
- (51.58 KiB) Scaricato 52 volte
Ultima modifica di epico il domenica 2 aprile 2023, 22:45, modificato 1 volta in totale.
OpenOffice 4.1 su Win10
Re: Pulsante nella barra strumenti
Un saluto al forum.
se @unlucky83 ci ha passato alcune ore, io sono giorni che, nelle ore libere, ci provo e riprovo...
Alla fine però, sono riuscito a nascondere (rendere non visibile) un pulsante, ma non a disabilitarlo che, ahimè, sarebbe stata la soluzione ottimale.
Il codice è un po' lungo, perchè l'ho scritto come esercizio personale e pertanto sono partito dal nome della toolbar che contiene i pulsanti da nascondere, per poi ottenere il suo indirizzo (URL) ed infine accedere ad ogni singolo elemento della stessa.
Le eventuali modifiche vengono perse al momento della chiusura del documento e non sono permanenti. Per riportare tutto allo stato originario, è necessario chiudere e riaprire il file.
E' ovvio che ognuno poi ne estrapolerà la parte che interessa e la modificherà come crede.
Il codice si trova nel modulo ProprietaBarra della libreria Standard ed ad inizio modulo ho inserito alcuni commenti.
Allego il file e di seguito riporto il solo codice.
Ovviamente, provatelo ...
Saluti
Geo
EDIT: il richiamo a @unlucky83 non vuole essere offensivo nei suoi confronti, che Dio me ne guardi, non ne ho motivo.... E' solo per far capire che per trovare una possibile soluzione, mi ha portato a lavorarci sopra tanto tempo. Scusate per la precisazione, ma rileggendo il post, mi sembrava doverosa.
Saluti
Geo
se @unlucky83 ci ha passato alcune ore, io sono giorni che, nelle ore libere, ci provo e riprovo...
Alla fine però, sono riuscito a nascondere (rendere non visibile) un pulsante, ma non a disabilitarlo che, ahimè, sarebbe stata la soluzione ottimale.
Il codice è un po' lungo, perchè l'ho scritto come esercizio personale e pertanto sono partito dal nome della toolbar che contiene i pulsanti da nascondere, per poi ottenere il suo indirizzo (URL) ed infine accedere ad ogni singolo elemento della stessa.
Le eventuali modifiche vengono perse al momento della chiusura del documento e non sono permanenti. Per riportare tutto allo stato originario, è necessario chiudere e riaprire il file.
E' ovvio che ognuno poi ne estrapolerà la parte che interessa e la modificherà come crede.
Il codice si trova nel modulo ProprietaBarra della libreria Standard ed ad inizio modulo ho inserito alcuni commenti.
Allego il file e di seguito riporto il solo codice.
Codice: Seleziona tutto
Sub ModificoPropritaElemento
rem Nome TollBar da ricercare
Dim NomeToolBar As String
NomeToolBar = "Barra1" 'nome della barra con i pulsantri 'Prec' , 'Home' e 'Suc'
rem Cerco la ToolBar e determino il suo URL
Dim oDoc As Object
Dim oManger
Dim aElements() As Object
Dim Trovata As Boolean
Dim iElements As Integer
Dim A() As Object
Dim iA As Integer
Dim y As Integer
Dim URLToolBar As String
oDoc = ThisComponent
oManager = oDoc.getUIConfigurationManager()
aElements = oManager.getUIElementsInfo(com.sun.star.ui.UIElementType.TOOLBAR)
Trovata = False
'ciclo all'interno delle barre presenti nel documento
For iElements = 0 to UBound(aElements)
A = aElements(iElements)
'ricerco all'interno dell'oggetto array il nome dell'elemento
For iA = 0 to UBound(A)
If A(iA).Name = "UIName" And A(iA).Value = NomeToolBar Then
y = 0 'azzero indice per ciclo Do/Loop
Do 'eseguo nuovamente un ciclo per ricavare URL della ToolBar
If A(y).Name = "ResourceURL" Then URLToolBar = A(y).Value
'Print URLToolBar
Trovata = True
Exit For
y = y +1
Loop While y > UBound(A)
End If
Next iA
If Trovata = True Then Exit For
Next iElements
rem accedo alla ToolBar ricercata ed analizzo le proprietà degli elementi che la costituiscono
Dim oController As Object
Dim oLayoutManager As Object
Dim ToolBar As Object
Dim oToolBar As Object
Dim iElemToolBar As Integer
Dim oElemToolBar() As Object
Dim TestoMessaggio As String
Dim x As Integer
oController = oDoc.GetCurrentController()
oLayoutManager = oController.getFrame().LayoutManager
'XRay oLayoutManager
ToolBar = oLayoutManager.getElement(URLToolBar)
'XRay ToolBar
oToolBar = ToolBar.getSettings(True)
'XRay oToolBar
' ciclo all'interno degli elementi presenti nella ToolBar
For iElemToolBar = 0 To oToolBar.getCount()-1
oElemToolBar = oToolBar.getByIndex(iElemToolBar) 'oggetto che contiene array delle proprietà dell'elemento
'ciclo all'interno delle proprietà dell'elemento; vengono esclusi separatori (Type diverso da 0)
For x = 0 To UBound(oElemToolBar)
If oElemToolBar(x).Name = "Type" And oElemToolBar(x).Value = 0 Then
y = 0 'azzero indice per ciclo Do/Loop
TestoMessaggio = ""
Do 'eseguo nuovamente un ciclo per riassumere le proprietà
TestoMessaggio = TestoMessaggio & oElemToolBar(y).Name & ": " & _
oElemToolBar(y).Value & CHR(10)
y = y +1
Loop While y <= UBound(oElemToolBar)
'mostro messaggio con le proprietà dell'elemento
MsgBox TestoMessaggio
End If
Next x
Next iElemToolBar
rem modifico proprietà del solo elemento denominato "Prec" all'interno della barra
Dim Proprieta(4) As New com.sun.star.beans.PropertyValue
Dim IndiceEl As Integer
Dim Elemento As New com.sun.star.beans.PropertyValue
Trovata = false
'ciclo all'interno degli elementi che costituiscono la barra
For iElemToolBar = 0 To oToolBar.getCount()-1
oElemToolBar = oToolBar.getByIndex(iElemToolBar) 'oggetto che contiene array delle proprietà dell'elemento
'ciclo all'interno delle proprietà dell'elemento; vengono esclusi separatori (Type diverso da 0)
For x = 0 To UBound(oElemToolBar)
If oElemToolBar(x).Name = "Label" And oElemToolBar(x).Value = "Prec" Then
IndiceEl = iElemToolBar 'indice dell'elemento
y = 0 'indice array proprietà
For Each Elemento in oElemToolBar()
Proprieta(y).Name = Elemento.Name
Proprieta(y).Handle = Elemento.Handle
If Elemento.Name = "CommandURL" Then
'E' possibile modificare la macro associata originariamente all'elemento, commentando la riga seguente
'e de-commentare la riga successiva
Proprieta(y).Value = Elemento.Value
'Proprieta(y).Value = "vnd.sun.star.script:Standard.Module4.NuovaMacro?language=Basic&location=document"
Proprieta(y).State = Elemento.State
Elseif Elemento.Name = "Label" Then
'E' possibile modificare il nome originario dell'elemento, commentando la riga seguente
'e de-commentare la riga successiva
Proprieta(y).Value = Elemento.Value
'Proprieta(y).Value = "Modificato"
Proprieta(y).State = Elemento.State
ElseIf Elemento.Name = "IsVisible" Then
'E' possibile modificare la visibilità dell'elemento, commentando la riga seguente
'e de-commentare la riga successiva
Proprieta(y).Value = True 'se non precedentemente nascosto il valore può essere = Elemento.Value
'Proprieta(y).Value = False
Proprieta(y).State = Elemento.State
Else
Proprieta(y).Value = Elemento.Value
Proprieta(y).State = Elemento.State
End If
y = y + 1
Next
oToolBar.replaceByIndex(IndiceEl, Proprieta) 'istruzione per sostituire elemento
'oToolBar.removeByIndex(Indice) 'istruzione per rimuovere elemento
'oToolBar.insertByIndex(Indice, Proprieta) 'istruzione per inserire un nuovo elemento
ToolBar.setSettings(oToolBar) 'applico le modifiche alla toolbar
ToolBar.updateSettings 'aggiorno la toolbar
Trovata = true
Exit For
End If
Next x
If Trovata = true Then Exit For
Next iElemToolBar
rem controllo modifiche apportate mostrando nuovamente il messaggio con le proprietà
For iElemToolBar = 0 To oToolBar.getCount()-1
oElemToolBar = oToolBar.getByIndex(iElemToolBar) 'oggetto che contiene array delle proprietà dell'elemento
'ciclo all'interno delle proprietà del solo elemento "Prec" modificato
For x = 0 To UBound(oElemToolBar)
If oElemToolBar(x).Name = "Label" And oElemToolBar(x).Value = "Prec" Then
y = 0 'azzero indice per ciclo Do/Loop
TestoMessaggio = ""
Do 'eseguo nuovamente un ciclo per riassumere le proprietà
TestoMessaggio = TestoMessaggio & oElemToolBar(y).Name & ": " & _
oElemToolBar(y).Value & CHR(10)
y = y +1
Loop While y <= UBound(oElemToolBar)
'visualizzo proprietà dell'elemento
MsgBox TestoMessaggio
End If
Next x
Next iElemToolBar
End Sub
Saluti
Geo
EDIT: il richiamo a @unlucky83 non vuole essere offensivo nei suoi confronti, che Dio me ne guardi, non ne ho motivo.... E' solo per far capire che per trovare una possibile soluzione, mi ha portato a lavorarci sopra tanto tempo. Scusate per la precisazione, ma rileggendo il post, mi sembrava doverosa.
Saluti
Geo
- Allegati
-
- nascondiFogli_Geo.ods
- (81.4 KiB) Scaricato 46 volte
Ultima modifica di geovign il martedì 28 marzo 2023, 12:45, modificato 1 volta in totale.
LibO v.24 su Manjaro
Re: Pulsante nella barra strumenti
Ho trovato un errore all'interno del primo ciclo Do/Loop While (rigo da 44 a 49).
Sostituire
con
Il codice funzionava ugualmente, perchè "ResourceURL" è la prima proprietà che trova, ma concettualmente il codice era sbagliato.
Saluti
Geo
Sostituire
Codice: Seleziona tutto
If A(y).Name = "ResourceURL" Then URLToolBar = A(y).Value
'Print URLToolBar
Trovata = True
Exit For
Codice: Seleziona tutto
If A(y).Name = "ResourceURL" Then
URLToolBar = A(y).Value
'Print URLToolBar
Trovata = True
Exit For
End If
Saluti
Geo
- Allegati
-
- nascondiFogli_Geo.ods
- (81.4 KiB) Scaricato 54 volte
LibO v.24 su Manjaro
Re: Pulsante nella barra strumenti
@geovign grazie per il tempo dedicato al post.
Ho provato a far girare il codice, ma per le mie limitate conoscenze non ho capito come applicarlo al mio quesito.
In Libre gira correttamente, in Open và in errore (Open è il programma che uso normalmente, Libre lo uso solo per prove).
. .
Nel mio precedente intervento ho allegato un file già funzionante con la soluzione proposta da @Gaetanopr (il file rispecchia circa 80% il reale).
Non ho inserito il codice perchè un pò incasinato e distribuito su più moduli (probabilmente si poteva fare di meglio).
Nel file reale ho ancora alcune criticità che sto provando ...
Rinnovo i ringraziamenti a tutto il forum per il tempo dedicato.
Ho provato a far girare il codice, ma per le mie limitate conoscenze non ho capito come applicarlo al mio quesito.
In Libre gira correttamente, in Open và in errore (Open è il programma che uso normalmente, Libre lo uso solo per prove).
. .
Nel mio precedente intervento ho allegato un file già funzionante con la soluzione proposta da @Gaetanopr (il file rispecchia circa 80% il reale).
Non ho inserito il codice perchè un pò incasinato e distribuito su più moduli (probabilmente si poteva fare di meglio).
Nel file reale ho ancora alcune criticità che sto provando ...
Rinnovo i ringraziamenti a tutto il forum per il tempo dedicato.
OpenOffice 4.1 su Win10
Re: Pulsante nella barra strumenti
Per ogni elemento (pulsante), OpenOffice determina un numero di proprietà maggiore rispetto LibreOffice, quindi il ciclo va in errore. La soluzione da me pensata:
- non dimensionare la variabile "Proprieta()" in sede di dichiarazione: Dim Proprieta() As New com.sun.star.beans.PropertyValue
- Ridimensionare la stessa variabile all'interno del ciclo For Each in funzione della variabile "y" : Redim Preserve Proprieta(y)
- Al termine del ciclo, dopo l'aggiornamento della barra, riportare a zero la dimensione della variabile: Redim Preserve Proprieta()
Così facendo ho risolto il problema di funzionamento tra Open e Libre da te segnalato.
Per quanto, riguarda l'implementazione del codice all'interno del tuo progetto, per ora, ho provato ad inserirlo nel primo file da te allegato al post iniziale e che allego.
Prova a vedere se gira nel modo corretto e da te voluto.
Saluti
Geo
- non dimensionare la variabile "Proprieta()" in sede di dichiarazione: Dim Proprieta() As New com.sun.star.beans.PropertyValue
- Ridimensionare la stessa variabile all'interno del ciclo For Each in funzione della variabile "y" : Redim Preserve Proprieta(y)
- Al termine del ciclo, dopo l'aggiornamento della barra, riportare a zero la dimensione della variabile: Redim Preserve Proprieta()
Così facendo ho risolto il problema di funzionamento tra Open e Libre da te segnalato.
Codice: Seleziona tutto
...
Dim Proprieta() As New com.sun.star.beans.PropertyValue
...
For Each Elemento in oElemToolBar()
Redim Preserve Proprieta(y)
Proprieta(y).Name = Elemento.Name
Proprieta(y).Handle = Elemento.Handle
If Elemento.Name = "IsVisible" Then
Proprieta(y).Value = False
Proprieta(y).State = Elemento.State
Else
Proprieta(y).Value = Elemento.Value
Proprieta(y).State = Elemento.State
End If
y = y + 1
Next
oToolBar.replaceByIndex(IndiceEl, Proprieta) 'istruzione per sostituire elemento
ToolBar.setSettings(oToolBar) 'applico le modifiche alla toolbar
ToolBar.updateSettings 'aggiorno la toolbar
Trovata = true
Redim Preserve Proprieta()
Exit For
...
Prova a vedere se gira nel modo corretto e da te voluto.
Saluti
Geo
- Allegati
-
- nascondiFogli_Geo2.ods
- (83.24 KiB) Scaricato 66 volte
LibO v.24 su Manjaro
Re: Pulsante nella barra strumenti
Interessante soluzione pure questa.
Nelle prove effettuate funziona, ma ho trovato 2 cose strane (vedi file allegato).
1 -
Io ho forzato alla chiusura del file il passaggio al foglio Totale (simulando il pulsante Home), che è la condizione di funzionamento del file (tutti i pulsanti nascosti).
Module6.showElements
...
call Main42 'vai al foglio Totale - Module4
'commentare per verificare
2 -
Io nella barra degli strumenti ho un pulsante (Interrompi esecuzione macro) che dopo il primo spostamento ad un'altro foglio si abilita e rimane così (per disabilitarlo bisogna salvare il file) vedi immagine.
. .
La base del file è "nascondiFogli_2-OpenO.ods" precedentemente allegato (e in quello non capita) ho solo aggiornato la parte relativa al controllo dei pulsanti.
Il file funziona senza problemi, ma non ho capito il motivo di questo comportamento (nell' Editor delle macro il pulsante Interrompi esecuzione macro è disabilitato).
.
.
Nelle prove effettuate funziona, ma ho trovato 2 cose strane (vedi file allegato).
1 -
A me capita il contrario, sì vengono perse, ma si ripresentano tutti i pulsanti nascosti.
Io ho forzato alla chiusura del file il passaggio al foglio Totale (simulando il pulsante Home), che è la condizione di funzionamento del file (tutti i pulsanti nascosti).
Module6.showElements
...
call Main42 'vai al foglio Totale - Module4
'commentare per verificare
2 -
Io nella barra degli strumenti ho un pulsante (Interrompi esecuzione macro) che dopo il primo spostamento ad un'altro foglio si abilita e rimane così (per disabilitarlo bisogna salvare il file) vedi immagine.
. .
La base del file è "nascondiFogli_2-OpenO.ods" precedentemente allegato (e in quello non capita) ho solo aggiornato la parte relativa al controllo dei pulsanti.
Il file funziona senza problemi, ma non ho capito il motivo di questo comportamento (nell' Editor delle macro il pulsante Interrompi esecuzione macro è disabilitato).
.
.
Resto fiducioso nella soluzione "REGINA" di disabilitare i singoli pulsanti.
- Allegati
-
- nascondiFogli_3.ods
- (52.53 KiB) Scaricato 56 volte
Ultima modifica di epico il domenica 2 aprile 2023, 22:40, modificato 1 volta in totale.
OpenOffice 4.1 su Win10
Re: Pulsante nella barra strumenti
1 - Non sono in grado di darti una spiegazione.
2 - A me non capita.
Saluti
Geo
2 - A me non capita.
Saluti
Geo
LibO v.24 su Manjaro
Re: Pulsante nella barra strumenti
Ho un problema nel file reale che non riesco a risolvere con la soluzione di @Gaetanopr:
I pulsanti si disabilitano/abilitano correttamente, però una volta disabilitati se salvo il file si ripristinano.
Succede anche selezionando un range e esportandolo in PDF.
Volendo fare delle verifiche si può utilizzare il file allegato il "venerdì 24 marzo 2023, 1:37"
Anche con il file allegato da @Gaetanopr si evidenzia.
Grazie
I pulsanti si disabilitano/abilitano correttamente, però una volta disabilitati se salvo il file si ripristinano.
Succede anche selezionando un range e esportandolo in PDF.
Volendo fare delle verifiche si può utilizzare il file allegato il "venerdì 24 marzo 2023, 1:37"
Anche con il file allegato da @Gaetanopr si evidenzia.
Grazie
OpenOffice 4.1 su Win10