[Base][Macro] Accesso ad un formulario
Inviato: giovedì 30 aprile 2020, 15:16
Un formulario si trova nel documento attivo thisComponent, contenuto nell'area drawpage, a sua volta interna al contenitore forms.
Ha il vantaggio di non dover conoscere il nome del formulario o sapere se è un MainForm o un SubForm.
- Metodo getByName
Per accedere al formulario MainForm con il metodo getByName:oppure, senza passi intermedi:Codice: Seleziona tutto
oDoc = thisComponent oDrawpage = oDoc.drawpage oForm = oDrawpage.forms.getByName("MainForm")
Codice: Seleziona tutto
oForm=thisComponent.drawpage.forms.getByName("MainForm")
- Metodo getByIndex
Per accedere al formulario principale con il metodo getByIndex:oppure, senza passi intermedi:Codice: Seleziona tutto
oDoc = thisComponent oDrawpage = oDoc.drawpage oForm = oDrawpage.forms.getByIndex(0)
Codice: Seleziona tutto
oForm=thisComponent.drawpage.forms.getByIndex(0)
Ha il vantaggio di non dover conoscere il nome del formulario o sapere se è un MainForm o un SubForm.
- Evento del Formulario
Per accedere al formulario tramite un evento dello stesso (es. Prima della modifica dei record di dati):Codice: Seleziona tutto
Sub MacroEsempio(oEvent As Object) oForm = oEvent.Source ... End Sub
- Evento di un Controllo del Formulario
Per accedere al formulario tramite un evento di un controllo dello stesso (es. Perdita del punto focale):Codice: Seleziona tutto
Sub MacroEsempio(oEvent As Object) oField = oEvent.Source.Model oForm = oField.Parent ... End Sub