You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

求LibreOffice 7.3可用的Python MsgBox宏完整运行示例

可用的LibreOffice Calc Python宏示例(弹出消息框)

以下是适配LibreOffice 7.3+、Python 3.10的完整Python宏代码,可绑定到单选按钮点击事件,弹出仅含文本和确定按钮的消息框:

import uno
from com.sun.star.awt import MessageBoxType, MessageBoxButtons

def ShowSimpleMsg(event):
    # 获取组件上下文与服务管理器
    ctx = uno.getComponentContext()
    smgr = ctx.getServiceManager()
    
    # 获取当前活动文档与窗口
    desktop = smgr.createInstanceWithContext("com.sun.star.frame.Desktop", ctx)
    doc = desktop.getCurrentComponent()
    frame = doc.getCurrentController().getFrame()
    parent_window = frame.getContainerWindow()
    
    # 创建并显示消息框
    msg_factory = parent_window.getMessageBoxFactory()
    msg_box = msg_factory.createMessageBox(
        parent_window,
        MessageBoxType.MESSAGEBOX,
        MessageBoxButtons.BUTTONS_OK,
        "提示",
        "单选按钮点击成功!"
    )
    msg_box.execute()

使用步骤:

  1. 打开LibreOffice Calc,按下Alt+F11打开宏编辑器
  2. 在左侧导航栏找到当前文档,右键选择「Python」→「新建」,粘贴上述代码后保存(宏名称设为ShowSimpleMsg)
  3. 返回Calc文档,开启「窗体控件」工具栏(视图→工具栏→窗体控件)
  4. 插入单选按钮,右键点击按钮选择「控件」,切换到「事件」标签页
  5. 找到「执行动作」项,点击右侧的宏选择按钮,选中刚才创建的ShowSimpleMsg宏并确认
  6. 点击单选按钮,即可弹出预期的消息框

注意事项:

  • 确保宏安全设置允许执行Python宏:依次打开「工具→选项→LibreOffice→安全性→宏安全性」,临时设置为「中」(测试完成后建议改回默认)
  • 宏必须保存在当前文档内部,不要选择全局宏路径,避免上下文引用错误
  • 代码中所有组件均使用LibreOffice自带的uno服务,无需额外安装依赖

内容的提问来源于stack exchange,提问作者CJH

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.21 17:17:07