我想做的事情很简单。
我在LibreOffice Base中有一个表单,其中包含一个用于输入某些数据的文本框和一个用于执行宏的按钮。 现在我想在单击按钮上使用宏输入文本框的值并使用Print(“...”)函数打印它。
这是我到目前为止所得到的。不多,但也许是一个开始:
Sub TestMacro
dim oForm as object
dim oTextbox as object
dim content as object
oForm = thisComponent.drawpage.forms.getByName("form_a")
oTextbox = oForm.getByName("testbox")
content = oTextbox.getText()
Print(content)
End Sub
感谢任何形式的帮助!
答案 0 :(得分:0)
我自己找到了答案。关键是让子程序有一个参数,因为宏用于按钮上的执行。在整个事件中,您可以获得作为表单的Parent,从中可以获得文本框和它的当前值。对我来说工作得很好。
这是代码
Sub TestMacro(oEvent as object)
DIM oForm AS OBJECT
DIM oField as object
DIM oTField as object
'gets the button
oTField = oEvent.Source.Model
'gets the parent of the button which is the form
oForm = oTField.Parent
'gets the text field based on its name
oField = oForm.getByName("testbox")
'prints the value of the textfield
Print(oField.getCurrentValue)
End Sub