【问题标题】:LibreOffice Base Basic Get form field value on loadLibreOffice Base Basic 加载时获取表单字段值
【发布时间】:2016-07-11 15:19:19
【问题描述】:

这可以在事件中获取字段的值(比如单击按钮):

Sub runatevent(Event as Object)
    dim form as Object
    dim cntrl
    form = Event.Source.Model.Parent
    cntrl = form.getByName("txtpath").currentvalue
    print(cntrl)
End Sub

但是,当我尝试在表单的“记录更改后”事件上触发此事件时,我收到错误消息:“找不到属性或方法:模型”

如何在“记录更改后”表单事件中获取“txtpath”的值?

【问题讨论】:

    标签: forms scripting libreoffice


    【解决方案1】:

    为了解决这个问题,我在Event 对象上使用了XrayTool。这是有效的:

    form = Event.Source
    

    正如我对your other question 的回答,我建议从结果集中读取值:

    nameCol = form.findColumn("PATH")
    print(form.getString(nameCol))
    

    这个想法是表单基于结果集,因此您可以只从结果集中读取,而不是从表单中获取控件然后检查控件的值。在我看来只是更优雅一点。

    【讨论】:

    • 除了我的数据在字段(文本块)中而不是在列中......所以 findColumn() 似乎不起作用。我如何找到一些简单的东西,比如表单对象现在允许哪些方法?我的字段名为 txtpath,它显示数据路径,它具有标签 (又名 lblpath)。谢谢!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2023-03-09
    • 1970-01-01
    • 2018-09-04
    • 1970-01-01
    • 2021-04-06
    • 2012-07-24
    • 1970-01-01
    相关资源
    最近更新 更多