[Risolto] Modificare proprietà campo controllo con macro

Discussioni sulle caratteristiche di database
Rispondi
r.vanoni
Messaggi: 35
Iscritto il: lunedì 29 novembre 2010, 15:40

[Risolto] Modificare proprietà campo controllo con macro

Messaggio da r.vanoni »

Ciao a tutti. Qualcuno sa se esiste il modo per abilitare-disabilitare un campo di controllo attraverso una istruzione macro? Vi allego una foto per spiegare il mio problema. La cosa mi tornerebbe molto utile per abilitare-disabilitare elementi nel formulario utilizzando pulsanti e macro.
Grazie a tutti.
Allegati
01.png
Ultima modifica di r.vanoni il sabato 26 marzo 2011, 16:22, modificato 1 volta in totale.
Windows 10 - Apache OpenOffice 4.1.8
giannidalmi
Messaggi: 62
Iscritto il: lunedì 21 febbraio 2011, 7:00

Re: Modificare proprietà campo controllo con macro

Messaggio da giannidalmi »

io ho fatto così

Codice: Seleziona tutto

'disabilita i campo LISTALIBRI
sub CaricaRestituzioni
    Doc = StarDesktop.CurrentComponent
	DocCrl = Doc.getCurrentController()
	Forms = Doc.Drawpage.Forms
	Form = Forms.GetbyName("Standard")
	form.getbyname("lista_libri").enabled=false
	form.getbyname("restituito").enabled=false
	form.reload()
end sub

'abilita il campo LISTALIBRI quando è stato scelto il lettore
sub AbilitaLibro(oEv)
	dim lettore as string
	dim controllo as object
	oModel = oEv.Source.Model
	lettore = oModel.parent.getbyname("lista_lettore").text
	cerca_lettore(lettore)
	oModel.parent.getbyname("lista_libri").enabled=TRUE
	oModel.parent.reload()
end sub	


ovviamente la prima macro sarà collegata ad una macro associata all'apertura del form
e la seconda istruzione sarà collegata all'evento che tu hai deciso debba abilitare il controllo
buon lavoro
open office 3.2.1
window 7
r.vanoni
Messaggi: 35
Iscritto il: lunedì 29 novembre 2010, 15:40

Re: Modificare proprietà campo controllo con macro

Messaggio da r.vanoni »

ottimo. ho realizzato una semplice macro attivabile con una casella di controllo (o chek box)- In questo modo posso attivare o disattivare la casella di riepilogo a piacimento. Grazie a giannidalmi dell'aiuto.

Codice: Seleziona tutto

REM---Procedura attiva e disattiva di una casella combinata di nome cas1 con utilizzo di una casella di controllo
Sub c_box_on_off(oEv) 'questa macro è inserita in  evento stato modoficato della casella di controllo
Dim otipo as Integer
otipo = oEv.Source.State
If otipo = 1 Then  'se casella di controllo è selezionata (quadretto con segno di spunta)  
 oModel = oEv.Source.Model
 oModel.parent.getbyname("cas1").enabled=true  'la casella combinata di nome "cas1" è attivata
 oModel.parent.reload()
End If
If otipo = 0 Then   'se casella di controllo non è selezionata (quadretto vuoto)
 oModel = oEv.Source.Model
 oModel.parent.getbyname("cas1").enabled=false  'la casella combinata di nome "cas1" è disattivata
 oModel.parent.reload()
End If
End sub
Windows 10 - Apache OpenOffice 4.1.8
giannidalmi
Messaggi: 62
Iscritto il: lunedì 21 febbraio 2011, 7:00

Re: [Risolto] Modificare proprietà campo controllo con macro

Messaggio da giannidalmi »

ho anche trovato questa proposta nel forum che rende il controlo visibile/invisibile
http://user.services.openoffice.org/it/ ... =465#p2116
ciao
open office 3.2.1
window 7
Rispondi