LibreOffice SymbolLibreOffice Symbol

Støt os venligst!

msgbox-modul

For at tilgå denne kommando...

Open Tools - Macros - Macro Manager menu.


Beskrivelse

MsgBox-klassemetoder i msgbox Python-modulet forenkler oprettelsen af beskedfelter ve hjælp af Abstract Windowing Toolkit API-faciliteter. MsgBox-konstruktøren opretter en tom dialog, som kan fyldes ud med knapper og tekst.

Advarselsikon

Dette modul er ikke en del af det understøttede UNO-API. Output til skærmen med msgbox-modulet bør begrænses til udviklings- eller test-situationer.


Tipikon

Udførelse af input/output til skærm med Python kan gøres med LibreOfficeDev UNO-API'et, ved at ty til ScriptForge.Basic-tjenesterutiner, eller ved at bruge Python-til-Basic mellemsproglige kald som beskrevet på wikien.


Egenskaber

Navn

Skrivebeskyttet (Readonly)

Type

Beskrivelse

numberOfLines

Nej

Boolean

Valgfri tilsidesættelse af den angivne højde for dialogen.


Metoder

Liste over metoder i MsgBox-klassen

addButton

renderFromBoxSize

renderFromButtonSize

show


addButton

Tilføj en knap til et MsgBox()-objekt.

Syntaks:

addButton(caption: str)

Parametre:

caption: Tekst til knappen.

Eksempel:

Se detaljeret eksempel nedenfor.

renderFromBoxSize

Definerer dimensionerne på MsgBox-dialog og størrelsen på knapper ud fra en angivet størrelse.

Syntaks:

renderFromBoxSize(size=150)

Parametre:

size (størrelse): Dialogens størrelse.
Bredde: ( 2 * størrelse ) / ( 3 * antal knapper + 1 )
Højde indstilles ud fra antallet af linjeskift-skilletegn i dialogteksten.

Eksempel:

Se detaljeret eksempel nedenfor.

renderFromButtonSize

Tilpasser dimensionerne af MsgBox-dialogen ud fra en angivet størrelse for knapperne.

Syntaks:

renderFromButtonSize(size=50)

Parametre:

size (størrelse): Størrelse for knapper.
Bredde: ( antal knapper * 1,5 + 0,5 ) * strørrelse
Højde indstilles ud fra antal linjeskift-skilletegn i dialogteksten.

Eksempel:

Se detaljeret eksempel nedenfor.

show

Viser MsgBox-varianter, for eksempel informationsfelt, advarselsfelt og så videre.

Syntaks:

show(message: str, decoration, title: str): str

Parametre:

message: Tekst i dialogvinduet. Kan indeholde linjeskift-skilletegn.

decoration: Ikke relevant.

title: Overskrift for dialogen.

Eksempel:

Se detaljeret eksempel nedenfor.

Detaljeret eksempel


import uno
from msgbox import MsgBox

if uno: _CTX = uno.getComponentContext()

def my_script():
    response = msgBox('Ønsker du at fortsætte?',('Ja', 'Nej', 'Annullér'),'En besked fra Python')
    infoBox(button=response)

def msgBox(prompt='', buttons=('Ok',), title='') -> str:
    dlg = MsgBox(_CTX)  # uno.getComponentContext()
    for btn in buttons:
        dlg.addButton(btn)
    dlg.renderFromButtonSize()
    dlg.numberOfLines = 15
    return dlg.show(prompt,0,title)
  
def infoBox(prompt='tilpasset fra msgbox.MsgBox', button='Hejsa', title='msgbox-modul'):
    dlg = MsgBox(_CTX)  # uno.getComponentContext()
    dlg.addButton(button)
    dlg.renderFromBoxSize(345)
    dlg.show(prompt,0,title)

g_exportedScripts = (my_script,)  # LibreOffice-indgangspunkter
  
if __name__ == "__main__":  # indgangspunkt for IDE'er
    from officehelper import SessionManager
    with SessionManager() as ctx:  # Python eksternt indhold
      _CTX = ctx
      my_script()
Tipikon

ScriptForge.Basic-tjenesten tilbyder MsgBox- og InputBox-alternativer med kendetegn som passer godt til kendetegn for Basic-funktionerne.