LibreOffice の Python マクロでダイアログを使う[プログラミング]
(2020-06-13 20:51:19) by shinoda


< ページ移動: 1 2 3 >

LibreOffice のマクロを Python で書いた場合の、「OK」ボタンが1つだけのダイアログボックスと、「はい」「いいえ」の選択肢のあるダイヤログボックスの使い方。
情報をググってみても、なんか「表示させるまで」の情報や、「OK」ボタン一個だけの場合の情報ばかりが多かったので、具体的な例をあげとこう。

a.セルに値をセットする時、すでに値がセットされていたら上書きするか確認表示

 <画像:20200613_dialog1.jpg>

b.読み込むファイルが無い時、その旨をアラート表示

 <画像:20200613_dialog2.jpg>

ソースは以下のとおり。(@ty21kyさんの Qiita の記事を参考に)

#!/usr/bin/env python
# -*- coding: utf-8 -*-

import uno
import datetime
import re
import os

CARD_DATA = '/data/number_cardid.csv'

class Bridge(object):

    def __init__(self):

        self._context = XSCRIPTCONTEXT.getComponentContext()
        self._desktop = XSCRIPTCONTEXT.getDesktop()
        self._frame = self._desktop.CurrentFrame
        self._window = self._frame.ContainerWindow
        self._toolkit = self._window.Toolkit

    def run_infodialog(self,, message=''):

        msgbox = self._toolkit.createMessageBox(self._window,
                                                'infobox',    # ヒントアイコン
                                                1,            # 「OK」ボタン
                                                title,
                                                message)
        msgbox.execute()
        msgbox.dispose()

    def run_querydialog(self,, message=''):

< ページ移動: 1 2 3 >


コメント投稿
次の記事へ >
< 前の記事へ
TOPへ戻る

Powered by
MT4i 3.0.8