Innhald

# Tenesta SFDialogs.Dialog

Tenesta Dialog bidreg til handsaminga av dialogar oppretta med Basic lDialog Editor eller dialogar som er oppretta direkte. Kvar førekomst av den nåverande klassen representerer éin dialogboks som vert vist for brukaren.

Eit dialogfelt kan visast i modal eller ikkje-modal modus.

I modal modus vert boksen vist og utføringa av makroprosessen vert utsett til ein av OK- eller Avbryt -knappane vert trykt på. I mellomtida kan brukarhandlingar utført på boksen løysa ut spesifikke handlingar.

I ikkje-modal modus er dialogvindauget «flytande» på brukarskrivebordet, og køyringa av makroprosessen held fram som normalt. Eit ikkje-modalt dialogvindauge vert lukka når den vert avslutta med Terminate()-metoden eller når LibreOffice-økta vert avslutta. Lukkeknappen for vindauget er inaktiv i ikkje-modale dialogvindauge.

Eit dialogvindauge forsvinn frå minnet etter eksplisitt avslutning.

Tenesta SFDialogs.Dialog er i nært slektskap med tenesta SFDialogs.DialogControl.

## Oppkall og bruk av tenester

Før du brukar Dialog-tenesta, må ScriptForge-biblioteket lastast inn eller importerast:

• Grunnleggjande makroar krev innlasting av biblioteket ScriptForge ved hjelp av denne setninga:
GlobalScope.BasicLibraries.loadLibrary("ScriptForge")
• Python-skript krev import frå scriptforge-modulen:
from scriptforge import CreateScriptService

Tenesta Dialog vert kalla opp med metoden CreateScriptService. Ho krev tre supplerande posisjons-argument for å spesifisera dialogvindauget som skal opnast.

Container: "GlobalScope" for førehandsinstallerte bibliotek eller eit vindaugenamn som er definert av tenesta ScriptForge.UI. Standardverdien tom streng "" står for det gjeldande dokumentet.

Bibliotek: Biblioteknamn (som skil mellom store og små bokstavar) finst i behaldaren. Standardverdien er «Standard».

Dialognamn: Ein streng som skil mellom store og små bokstavar, gjev dialogvindauget.

Eksempla nedanfor i Basic og Python viser dialogvindauget dlgConsole, som høyrer til det delte biblioteket ScriptForge:

          Dim oDlg As Object, lButton As Long
          Dim Container As String, Library As String, DialogName As String
          Set oDlg = CreateScriptService("SFDialogs.Dialog", "GlobalScope", "ScriptForge", "dlgConsole")
          ' … initialisering av kontrollelementa vert skrivne her…
          lButton = oDlg.Execute()
          ' Standardmodus = Modal
          If lButton = oDlg.OKBUTTON Then
          ' … Handsama kontrollelementa og gjera det som trengst her
          End If
          oDlg.Terminate()

Eller med Python:

        dlg = CreateScriptService('SFDialogs.Dialog', 'GlobalScope', 'ScriptForge', 'dlgConsole')
        ' … initialisering av kontrollelementa vert skrivne her…
        rc = dlg.Execute()
        ' Standardmodus er Modal
        if rc == dlg.OKBUTTON:
            ' … Handsama kontrollelementa og gjera det som trengst her
        dlg.Terminate()

Bruk strengen «GlobalScope» som container-argumentet når dialogvindauget er lagra anten i Mine makroar og dialogvindauge eller i Programmakroar og dialogvindauge.

Dialogtenesta tilbyr metodar som opprettar nye kontrollar dynamisk i eit dialogvindauge førehandsdefinert med Dialogredigering. Eit dialogvindauge vert initialisert med kontrollelement i dialogredigeringa, og nye kontrollelement kan leggjast til under køyring før eller etter dialoguttrykket Execute().

Tenesta Dialog kan på same måte påkallast ‒ gjennom metoden CreateScriptService ‒ når du opprettar dialogar undervegs. Det krev to supplerande posisjonsargument etter namnet på ad-hoc-tenesta «NewDialog»:

Dialognamn: Ein streng som skil mellom store og små bokstavar, angjev dialogvindauget.

Place: Plasseringa av dialogvindauget i vindauget, er anten:

- ei Basic matrise eller Python tuple med 4 element: (X, Y, breidd, høgd)

- eit com.sun.star.awt.Rectangle [X, Y, Breidd, Høgd]-objekt

All elements are expressed in Map AppFont-einingar.

        Sub newDialog()
            Dim oDlg As Object
           oDlg = CreateScriptService("NewDialog", "myDialog1", Array(100,200, 40, 110))
           ' ...
        End Sub

Eller med Python:

        def newDialog():
           dlg = CreateScriptService('NewDialog', 'myDialog1', (100,200, 40, 110))
           # … Handsama kontrollelementa og gjera det som trengst her

Alle eigenskapar og metodar som gjeld for førehandsdefinerte dialogvindauge, er tilgjengelege for slike nye dialogvindauge. Spesielt serien av CreateXXX ()-metodar for tillegg av nye kontrollelement i dialogvindauge.

## Hentar dialogførekomsten som løyste ut ei dialoghending

Du kan henta ein førekomst av tenesta Dialog via tenesta SFDialogs.DialogEvent viss dialogvindauget vart opna med tenesta Dialog. I eksempelet nedanfor inneheld førekomsten av oDlg førekomsten av Dialog som utløyste dialoghendinga.

        Sub aDialogEventHander(ByRef poEvent As Object)
            Dim oDlg As Object
            Set oDlg = CreateScriptService("SFDialogs.DialogEvent", poEvent)
            ' ...
        End Sub

Eller bruka Python:

        def control_event_handler(event: uno):
            dlg = CreateScriptService("SFDialogs.DialogEvent", event)
            # ...

Merk at i dei tidlegare eksempla kan prefikset «SFDialogs.» sløyfast når det passar best.

### Handsaming av unntak i hendingshandsamarane

Når du opprettar ein hendingshandsamar for dialoghendingar, er det god praksis å handsama feil inne i sjølve underrutinen.For eksempel går du ut frå at hendingshandsamaren nedanfor vert kalla opp når museknappen vert trykt i dialogvindauget.

        Sub OnMouseButtonPressed(ByRef oEvent As Object)
        On Local Error GoTo Catch
            Dim oDialog As Object
            oDialog = CreateScriptService("DialogEvent", oEvent)
            ' Køyr hendinga
            Exit Sub
        Catch:
            MsgBox SF_Exception.Description
            SF_Exception.Clear
        End Sub

Kall opp SF_Exception.Clear viss du ikkje vil at feilen skal overførast vidare etter at dialogvindauget er avslutta.

I Python brukar du native try/except-blokker for unntakshandsaming som vist nedanfor:

        def on_mouse_button_pressed(event=None):
            try:
                dlg = CreateScriptService("DialogEvent", event)
                # Køyr hendinga
            except Exception as e:
                # Objektet «oBase» er ein førekomst av Basic-tenesta
                bas.MsgBox(str(e))

## Eigenskapar

Namn | Skriveverna | Type | Beskriving
--- | --- | --- | ---
OKBUTTON | Ja | Integer | Verdi = 1. Der vart trykt på ein OK-knapp.
CANCELBUTTON | Ja | Integer | Verdi = 0. Der vart trykt på ein Avbryt-knapp.
Caption | Nei | String | Spesifiser tittelen på dialogvindauget.
Height | Nei | Long | Spesifiser høgda på dialogvindauget.
Modal | Ja | Boolean | Viser om dialogvindauget vert køyrd i modal-modus.
Name | Ja | String | Namnet på dialogvindauget
Page | Nei | Integer | Eit dialogvindauge kan ha fleire sider som brukaren kan gå gjennom steg for steg. Kva side i dialogvindauget som er gjeldande, vert definert i sideeigenskapen.
Visible | Nei | Boolean | Spesifiserer om dialogvindauget er synleg på skrivebordet. Som standard er han ikkje synleg før etter at metoden Execute() er utført.
XDialogModel | Ja | UNO object | Det UNO-objektet som representer modellen for dialogvindauget. Sjå detaljert informasjon i XControlModel og UnoControlDialogModel i dokumentasjonen for API-en ( Application Programming Interface).
XDialogView | Ja | UNO object | Det UNO-objektet som representer modellen for dialogvindauget. Sjå detaljert informasjon i XControlModel og UnoControlDialogModel i dokumentasjonen for API-en ( Application Programming Interface).
Width | Nei | Long | Spesifiser breidda på dialogvindauget.

## Hendingseigenskapar

Eigenskapane On... returnerer ein URI-streng med referansen til skriptet som vert utløyst av hendinga. On...-eigenskapar kan gjevast programmatisk.
Les spesifikasjonen i scripting framework URI-specifikation.

Skriv inn eit namn for objektet | Read/Write | Basic IDE-beskriving
--- | --- | ---
OnFocusGained | Ja | Når han får fokus
OnFocusLost | Ja | Når han mistar fokus
OnKeyPressed | Ja | Ved tastetrykk
OnKeyReleased | Ja | Etter tastetrykk
OnMouseDragged | Ja | Muserørsle medan ein tast er trykt
OnMouseEntered | Ja | Mus innanfor
OnMouseExited | Ja | Mus utanfor
OnMouseMoved | Ja | Mus flytt
OnMousePressed | Ja | Museknapp trykt ned
OnMouseReleased | Ja | Museknapp sloppe

Tilordning av hendingar via Basic IDE og tilordning av hendingar via makroar utelukkar kvarandre.

Liste over metodar i tenesta Dialog
Activate Center Controls CloneControl CreateButton CreateCheckBox CreateComboBox CreateCurrencyField CreateDateField CreateFileControl CreateFixedLine | CreateFixedText CreateFormattedField CreateGroupBox CreateHyperlink CreateImageControl CreateListBox CreateNumericField CreatePatternField CreateProgressBar CreateRadioButton CreateScrollBar | CreateTableControl CreateTextField CreateTimeField CreateTreeControl EndExecute Execute GetTextsFromL10N Resize OrderTabs SetPageManager Terminate

Dimensjonering av eit dialogvindauge vert gjort ved å bruka Map AppFont-einingar. Eit dialogvindauge eller kontrollmodell brukar også AppFont-einingar, medan visinga av dei brukar pikslar.

## Activate

Set fokus på det gjeldande dialogvindauget. Returner Sann viss fokuseringa lukkast.

Denne metoden vert kalla opp frå eit dialogvindauge, ei kontrollhending eller når det vert vist eit dialogvindauge i ikkje-modal modus.

### Syntaks:

svc.Activate(): bool

### Eksempel:

          Dim oDlg As Object
          Set oDlg = CreateScriptService(,, "myDialog")
          oDlg.Execute()
          ' ...
          oDlg.Activate()

Både Python- og LibreOffice-Basic-eksempla går ut frå at dialogvidauget er lagra i Standard-biblioteket i det gjeldande dokument.

         dlg = CreateScriptService(,,'myDialog')
         dlg.Execute()
         # ...
         dlg.Activate()

## Center

Sentrerer det gjeldande dialogvindauget i midten av eit overordna vindauge. Utan argument sentrerer metoden dialogvindauget i midten av det gjeldande vindauget.

Returnerer Sann når han lukkast.

### Syntaks:

svc.Center(opt Parent: obj): bool

### Parametrar:

Overordna: Eit valfritt objekt som kan vera anten…

- eit ScriptForge-dialogobjekt

- eit ScriptForge-dokument (Calc, Base, ...)-objekt

### Eksempel:

##### I Basic

         Sub TriggerEvent(oEvent As Object)
             Dim oDialog1 As Object, oDialog2 As Object, lExec As Long
             Set oDialog1 = CreateScriptService("DialogEvent", oEvent) ' Dialogvindauget som var årsaka til hendinga
             Set oDialog2 = CreateScriptService("Dialog", ...) ' Opnar eit anna dialogvindauge
             oDialog2.Center(oDialog1)
             lExec = oDialog2.Execute()
             Select Case lExec
                 ...
         End Sub

##### I Python

         def triggerEvent(event: uno):
           dlg1 = CreateScriptService('DialogEvent.Dialog', hendelse) # Dialogvindauget som var årsaka til hendinga
           dlg2 = CreateScriptService("Dialog", ...) # Opnar eit anna dialogvindauge
           dlg2.Center(dlg1)
           rc = dlg2.Execute()
           if rc is False:
             # ...

## CloneControl

Dupliser eit kontrollelement av kva type som helst i det gjeldande dialogvindauget. Det dupliserte kontrollelementet vert ikkje endra og kan flyttast

### Syntaks:

svc.CloneControl(SourceName: str, ControlName: str, Left: num, Top: num): svc

### Parametrar:

SourceName: Namnet på kontrollelementet som skal dupliserast.

Kontrollnamn: Eit gyldig kontrollnamn som ein streng som skil mellom store og små bokstavar. Det treng ikkje finnast ennå.

Venstre, Topp: Koordinata for det nye kontrollelementet uttrykt i Map AppFont-einingar.

### Returverdi:

Ein førekomst av tenesta SFDialogs.DialogControl eller Nothing.

### Eksempel:

##### I Basic

          Set myButton2 = oDlg.CloneControl("Button1", "Button2", 30, 30)

##### I Python

         dlg = dlg.CloneControl('Button1', 'Button2', 30, 30)

## Controls

Returner anten:

- lista over kontrollelement som er i dialogvidauget

- ein DialogControl-klasseførekomst basert på namnet

### Syntaks:

svc.Controls(): str[0..*]

svc.Controls(controlname: str): svc

### Parametrar:

KontrolNamn: Eit gyldig kontrollnamn som ein streng (som skil mellom små og store bokstavar). Viss denne manglar vert lista over kontrollnamn returnert som ei nullbasert matrise.

### Eksempel:

          Dim myDialog As Object, myList As Variant, myControl As Object
          Set myDialog = CreateScriptService("SFDialogs.Dialog", , "Standard", "Dialog1")
          myList = myDialog.Controls()
          Set myControl = myDialog.Controls("myTextBox")

         dlg = CreateScriptService('SFDialogs.Dialog','', 'Standard', 'Dialog1')
         ctrls = dlg.Controls()
         ctrl = dlg.Controls('myTextBox')

## CreateButton

Lagar eit nytt kontrollelement av typen Button i det gjeldande dialogvindauget.

### Syntaks:

svc.CreateButton(ControlName: str, Place: any, Toggle: bool = False, Push: str = ""): svc

### Parametrar:

Kontrollnamn: namnet på det nye kontrollelementet. Det treng ikkje finnast førebels.

Place: anten …

- ei Basic matrise eller Python tuple med 4 element: (X, Y, breidd, høgd)

- eit com.sun.star.awt.Rectangle [X, Y, Breidd, Høgd]-objekt

Alle elementa er uttrykte i Map AppFont-einingar.

Toggle: når Sann vert det laga eit skiftebrytar. Standard = Usann

Push: "OK", "CANCEL" eller "" (standard)

### Returverdi:

Ein førekomst av tenesta SFDialogs.DialogControl eller Nothing.

### Eksempel:

##### I Basic

         Set myButton = oDlg.CreateButton("Button1", Array(20, 20, 60, 15))

##### I Python

         myButton = dlg.CreateButton('Button1', (20, 20, 60, 15))

## CreateCheckBox

Lagar eit nytt kontrollelement av typen CheckBox i det gjeldande dialogvindauget.

### Syntaks:

svc.CreateCheckBox(ControlName: str, Place: any, Multiline: bool = False): svc

### Parametrar:

Kontrollnamn: namnet på det nye kontrollelementet. Det treng ikkje finnast førebels.

Place: anten …

- ei Basic matrise eller Python tuple med 4 element: (X, Y, breidd, høgd)

- eit com.sun.star.awt.Rectangle [X, Y, Breidd, Høgd]-objekt

Alle elementa er uttrykte i Map AppFont-einingar.

MultiLine: Når Sann (standard = Usann), kan biletteksten visast på meir enn éi linje.

### Returverdi:

Ein førekomst av tenesta SFDialogs.DialogControl eller Nothing.

### Eksempel:

##### I Basic

         Set myCheckBox = oDlg.CreateCheckBox("CheckBox1", Array(20, 20, 60, 15), MultiLine := True)

##### I Python

         myCheckBox = dlg.CreateCheckBox('CheckBox1', (20, 20, 60, 15), MultiLine = True)

## CreateComboBox

Lagar eit nytt kontrollelement av typen ComboBox i det gjeldande dialogvindauget.

### Syntaks:

svc.CreateComboBox(ControlName: str, Place: any, Border: str = "3D", DropDown: bool = True, LineCount: num = 5): svc

### Parametrar:

Kontrollnamn: namnet på det nye kontrollelementet. Det treng ikkje finnast førebels.

Place: anten …

- ei Basic matrise eller Python tuple med 4 element: (X, Y, breidd, høgd)

- eit com.sun.star.awt.Rectangle [X, Y, Breidd, Høgd]-objekt

Alle elementa er uttrykte i Map AppFont-einingar.

Border: "3D" (standard), "FLAT" eller "NONE"

DropDown: Når Sann (standard), vert det vist ein nedtrekksknapp.

LineCount: Spesifiserer det høgaste talet på linjer vist i nedtrekket (standard = 5)

### Returverdi:

Ein førekomst av tenesta SFDialogs.DialogControl eller Nothing.

### Eksempel:

##### I Basic

         Set myComboBox = oDlg.CreateComboBox("ComboBox1", Array(20, 20, 60, 15), Dropdown := True)

##### I Python

         myComboBox = dlg.CreateComboBox('ComboBox1', (20, 20, 60, 15), Dropdown = True)

## CreateCurrencyField

Lagar eit nytt kontrollelement av typen CurrencyField i det gjeldande dialogvindauget.

### Syntaks:

svc.CreateCurrencyField(ControlName: str, Place: any, Border ="3D", SpinButton: bool = False, MinValue: num = -1000000, MaxValue: num = +1000000, Increment: num = 1, Accuracy: num = 2): svc

### Parametrar:

Kontrollnamn: namnet på det nye kontrollelementet. Det treng ikkje finnast førebels.

Place: anten …

- ei Basic matrise eller Python tuple med 4 element: (X, Y, breidd, høgd)

- eit com.sun.star.awt.Rectangle [X, Y, Breidd, Høgd]-objekt

Alle elementa er uttrykte i Map AppFont-einingar.

Border: "3D" (standard), "FLAT" eller "NONE"

SpinButton: når Sann (standard = Usann) finst det ein rulleknapp

MinValue: den lågaste verdien som kan skrivast inn i kontrollelementet. Standard = -1000000

MaxValue: den høgaste verdien som kan skrivast inn i kontrollelementet. Standard = +1000000

Increment: stega i talboksen når knappen vert trykt. Standard = 1.

Accuracy: spesifiserer talet på desimalar. Standard = 2.

### Returverdi:

Ein førekomst av tenesta SFDialogs.DialogControl eller Nothing.

### Eksempel:

##### I Basic

         Set myCurrencyField = oDlg.CreateCurrencyField("CurrencyField1", Array(20, 20, 60, 15), SpinButton := True)

##### I Python

         myCurrencyField = dlg.CreateCurrencyField('CurrencyField1', (20, 20, 60, 15), SpinButton = True)

## CreateDateField

Lagar eit nytt kontrollelement av typen DateField i det gjeldande dialogvindauget.

### Syntaks:

svc.CreateDateField(ControlName: str, Place: any, Border: str = "3D", DropDown: bool = False, opt MinDate: datetime, opt MaxDate: datetime): svc

### Parametrar:

Kontrollnamn: namnet på det nye kontrollelementet. Det treng ikkje finnast førebels.

Place: anten …

- ei Basic matrise eller Python tuple med 4 element: (X, Y, breidd, høgd)

- eit com.sun.star.awt.Rectangle [X, Y, Breidd, Høgd]-objekt

Alle elementa er uttrykte i Map AppFont-einingar.

Border: "3D" (standard), "FLAT" eller "NONE"

DropDown: når Sann (standard = Usann) finst det ein nedtrekksknapp

MinValue: den lågaste datoen som kan skrivast inn i kontrollelementet. Standard = 1900-01-01

MaxValue: den høgaste datoen som kan skrivast inn i kontrollelementet. Standard = 2200-12-31

### Returverdi:

Ein førekomst av tenesta SFDialogs.DialogControl eller Nothing.

### Eksempel:

##### I Basic

         Set myDateField = oDlg.CreateDateField("DateField1", Array(20, 20, 60, 15), Dropdown := True)

##### I Python

         myDateField = dlg.CreateDateField('DateField1', (20, 20, 60, 15), Dropdown = True)

## CreateFileControl

Lagar eit nytt kontrollelement av typen FileControl i det gjeldande dialogvindauget.

### Syntaks:

svc.CreateFileControl(ControlName: str, Place: any, Border: str = "3D"): svc

### Parametrar:

Kontrollnamn: namnet på det nye kontrollelementet. Det treng ikkje finnast førebels.

Place: anten …

- ei Basic matrise eller Python tuple med 4 element: (X, Y, breidd, høgd)

- eit com.sun.star.awt.Rectangle [X, Y, Breidd, Høgd]-objekt

Alle elementa er uttrykte i Map AppFont-einingar.

Border: "3D" (standard), "FLAT" eller "NONE"

### Returverdi:

Ein førekomst av tenesta SFDialogs.DialogControl eller Nothing.

### Eksempel:

##### I Basic

         Set myFileControl = oDlg.CreateFileControl("FileControl1", Array(20, 20, 60, 15))

##### I Python

         myFileControl = dlg.CreateFileControl('FileControl1', (20, 20, 60, 15))

## CreateFixedLine

Lagar eit nytt kontrollelement av typen FixedLine i det gjeldande dialogvindauget.

### Syntaks:

svc.CreateFixedLine(ControlName: str, Place: any, Orientation: str): svc

### Parametrar:

Kontrollnamn: namnet på det nye kontrollelementet. Det treng ikkje finnast førebels.

Place: anten …

- ei Basic matrise eller Python tuple med 4 element: (X, Y, breidd, høgd)

- eit com.sun.star.awt.Rectangle [X, Y, Breidd, Høgd]-objekt

Alle elementa er uttrykte i Map AppFont-einingar.

Orientation: for vassrett orientering bruk «H» eller «Horizontal»; for loddrett orientering «V» eller «Vertical».

### Returverdi:

Ein førekomst av tenesta SFDialogs.DialogControl eller Nothing.

### Eksempel:

##### I Basic

         Set myFixedLine = oDlg.CreateFixedLine("FixedLine1", Array(20, 20, 60, 15), Orientation := "vertical")

##### I Python

         myFixedLine = dlg.CreateFixedLine('FixedLine1', (20, 20, 60, 15), Orientation = 'vertical')

## CreateFixedText

Lagar eit nytt kontrollelement av typen FixedText i det gjeldande dialogvindauget.

### Syntaks:

svc.CreateFixedText(ControlName: str, Place: any, Border: str = "3D", MultiLine: bool = False, Align: str = "LEFT", VerticalAlign: str = "TOP"): svc

### Parametrar:

Kontrollnamn: namnet på det nye kontrollelementet. Det treng ikkje finnast førebels.

Place: anten …

- ei Basic matrise eller Python tuple med 4 element: (X, Y, breidd, høgd)

- eit com.sun.star.awt.Rectangle [X, Y, Breidd, Høgd]-objekt

Alle elementa er uttrykte i Map AppFont-einingar.

Border: "NONE" (standard), "FLAT" eller "3D"

MultiLine: Når Sann (standard = Usann), kan biletteksten visast på meir enn éi linje.

Align: vassrett justering, "LEFT" (standard), "CENTER" eller "RIGHT"

VerticalAlign: loddrett justering, "TOP" (standard), "MIDDLE" eller "BOTTOM"

### Returverdi:

Ein førekomst av tenesta SFDialogs.DialogControl eller Nothing.

### Eksempel:

##### I Basic

         Set myFixedText = oDlg.CreateFixedText("FixedText1", Array(20, 20, 60, 15), MultiLine := True)

##### I Python

         myFixedText = dlg.CreateFixedText('FixedText1', (20, 20, 60, 15), MultiLine = True)

## CreateFormattedField

Lagar eit nytt kontrollelement av typen FormattedField i det gjeldande dialogvindauget.

### Syntaks:

svc.CreateFormattedField(ControlName: str, Place: any, Border: str = "3D", SpinButton: bool = False, MinValue: num = -1000000, MaxValue: num = +1000000): svc

### Parametrar:

Kontrollnamn: namnet på det nye kontrollelementet. Det treng ikkje finnast førebels.

Place: anten …

- ei Basic matrise eller Python tuple med 4 element: (X, Y, breidd, høgd)

- eit com.sun.star.awt.Rectangle [X, Y, Breidd, Høgd]-objekt

Alle elementa er uttrykte i Map AppFont-einingar.

Border: "3D" (standard), "FLAT" eller "NONE"

SpinButton: når Sann (standard = Usann) finst det ein talknapp

MinValue: den lågaste verdien som kan skrivast inn i kontrollelementet. Standard = -1000000

MaxValue: den høgaste verdien som kan skrivast inn i kontrollelementet. Standard = +1000000

### Returverdi:

Ein førekomst av tenesta SFDialogs.DialogControl eller Nothing.

### Eksempel:

##### I Basic

         Set myFormattedField = oDlg.CreateFormattedField("FormattedField1", Array(20, 20, 60, 15), SpinButton := True)

##### I Python

         myFormattedField = dlg.CreateFormattedField('FormattedField1', (20, 20, 60, 15), SpinButton = True)

## CreateGroupBox

Lagar eit nytt kontrollelement av typen GroupBox i det gjeldande dialogvindauget.

### Syntaks:

svc.CreateGroupBox(ControlName: str, Place: any): svc

### Parametrar:

Kontrollnamn: namnet på det nye kontrollelementet. Det treng ikkje finnast førebels.

Place: anten …

- ei Basic matrise eller Python tuple med 4 element: (X, Y, breidd, høgd)

- eit com.sun.star.awt.Rectangle [X, Y, Breidd, Høgd]-objekt

Alle elementa er uttrykte i Map AppFont-einingar.

### Returverdi:

Ein førekomst av tenesta SFDialogs.DialogControl eller Nothing.

### Eksempel:

##### I Basic

         Set myGroupBox = oDlg.CreateGroupBox("GroupBox1", Array(20, 20, 60, 15))

##### I Python

         myGroupBox = dlg.CreateGroupBox('GroupBox1', (20, 20, 60, 15))

## CreateHyperlink

Lagar eit nytt kontrollelement av typen Hyperlink i det gjeldande dialogvindauget.

### Syntaks:

svc.CreateHyperlink(ControlName: str, Place: any, Border: str = "NONE", MultiLine: bool = False, Align: str = "LEFT", VerticalAlign: str = "TOP"): svc

### Parametrar:

Kontrollnamn: namnet på det nye kontrollelementet. Det treng ikkje finnast førebels.

Place: anten …

- ei Basic matrise eller Python tuple med 4 element: (X, Y, breidd, høgd)

- eit com.sun.star.awt.Rectangle [X, Y, Breidd, Høgd]-objekt

Alle elementa er uttrykte i Map AppFont-einingar.

Border: "NONE" (standard), "FLAT" eller "3D"

MultiLine: Når Sann (standard = Usann), kan biletteksten visast på meir enn éi linje.

Align: vassrett justering, "LEFT" (standard), "CENTER" eller "RIGHT"

VerticalAlign: loddrett justering, "TOP" (standard), "MIDDLE" eller "BOTTOM"

### Returverdi:

Ein førekomst av tenesta SFDialogs.DialogControl eller Nothing.

### Eksempel:

##### I Basic

         Set myHyperlink = oDlg.CreateHyperlink("Hyperlink1", Array(20, 20, 60, 15), MultiLine := True)

##### I Python

         myHyperlink = dlg.CreateHyperlink('Hyperlink1', (20, 20, 60, 15), MultiLine = True)

## CreateImageControl

Lagar eit nytt kontrollelement av typen ImageControl i det gjeldande dialogvindauget.

### Syntaks:

svc.CreateImageControl(ControlName: str, Place: any, Border: str = "3D", Scale: str = "FITTOSIZE"): svc

### Parametrar:

Kontrollnamn: namnet på det nye kontrollelementet. Det treng ikkje finnast førebels.

Place: anten …

- ei Basic matrise eller Python tuple med 4 element: (X, Y, breidd, høgd)

- eit com.sun.star.awt.Rectangle [X, Y, Breidd, Høgd]-objekt

Alle elementa er uttrykte i Map AppFont-einingar.

Border: "3D" (standard), "FLAT" eller "NONE"

Scale: Ein av desse verdiane: "FITTOSIZE" (standard), "KEEPRATIO" eller "NO"

### Returverdi:

Ein førekomst av tenesta SFDialogs.DialogControl eller Nothing.

### Eksempel:

##### I Basic

         Set myImageControl = oDlg.CreateImageControl("ImageControl1", Array(20, 20, 60, 15))

##### I Python

           myImageControl = dlg.CreateImageControl('ImageControl1", (20, 20, 60, 15))

## CreateListBox

Lagar eit nytt kontrollelement av typen ListBox i det gjeldande dialogvindauget.

### Syntaks:

svc.CreateListBox(ControlName: str, Place: any, Border: str = "3D", DropDown: bool = True, LineCount: num = 5, MultiSelect: bool = False): svc

### Parametrar:

Kontrollnamn: namnet på det nye kontrollelementet. Det treng ikkje finnast førebels.

Place: anten …

- ei Basic matrise eller Python tuple med 4 element: (X, Y, breidd, høgd)

- eit com.sun.star.awt.Rectangle [X, Y, Breidd, Høgd]-objekt

Alle elementa er uttrykte i Map AppFont-einingar.

Border: "3D" (standard), "FLAT" eller "NONE"

DropDown: Når Sann (standard), vert det vist ein nedtrekksknapp.

LineCount: Spesifiserer det høgaste talet på linjer vist i nedtrekket (standard = 5)

MultiSelect: Når Sann kan meir enn éi oppføring veljast. Standard = Usann

### Returverdi:

Ein førekomst av tenesta SFDialogs.DialogControl eller Nothing.

### Eksempel:

##### I Basic

         Set myListBox = oDlg.CreateListBox("ListBox1", Array(20, 20, 60, 15), Dropdown := True, MultiSelect := True)

##### I Python

         myListBox = dlg.CreateListBox('ListBox1', (20, 20, 60, 15), Dropdown = True, MultiSelect = True)

## CreateNumericField

Lagar eit nytt kontrollelement av typen NumericField i det gjeldande dialogvindauget.

### Syntaks:

svc.CreateNumericField(ControlName: str, Place: any, Border: str = "3D", SpinButton: bool = False, MinValue: num = -1000000, MaxValue: num = 1000000, Increment: num = 1, Accuracy: num = 2): svc

### Parametrar:

Kontrollnamn: namnet på det nye kontrollelementet. Det treng ikkje finnast førebels.

Place: anten …

- ei Basic matrise eller Python tuple med 4 element: (X, Y, breidd, høgd)

- eit com.sun.star.awt.Rectangle [X, Y, Breidd, Høgd]-objekt

Alle elementa er uttrykte i Map AppFont-einingar.

Border: "3D" (standard), "FLAT" eller "NONE"

SpinButton: når Sann (standard = Usann) finst det ein talknapp

MinValue: den lågaste verdien som kan skrivast inn i kontrollelementet. Standard = -1000000

MaxValue: den høgaste verdien som kan skrivast inn i kontrollelementet. Standard = +1000000

Increment: stega i talboksen når knappen vert trykt. Standard = 1.

Accuracy: spesifiserer talet på desimalar. Standard = 2.

### Returverdi:

Ein førekomst av tenesta SFDialogs.DialogControl eller Nothing.

### Eksempel:

##### I Basic

         Set myNumericField = oDlg.CreateNumericField("NumericField1", Array(20, 20, 60, 15), SpinButton := True)

##### I Python

         myNumericField = dlg.CreateNumericField('NumericField1', (20, 20, 60, 15), SpinButton = True)

## CreatePatternField

Lagar eit nytt kontrollelement av typen PatternField i det gjeldande dialogvindauget.

### Syntaks:

svc.CreatePatternField(ControlName: str, Place: any, Border: str = "3D", EditMask: str, opt LiteralMax: str): svc

### Parametrar:

Kontrollnamn: namnet på det nye kontrollelementet. Det treng ikkje finnast førebels.

Place: anten …

- ei Basic matrise eller Python tuple med 4 element: (X, Y, breidd, høgd)

- eit com.sun.star.awt.Rectangle [X, Y, Breidd, Høgd]-objekt

Alle elementa er uttrykte i Map AppFont-einingar.

Border: "3D" (standard), "FLAT" eller "NONE"

EditMask: ein teiknkode som bestemmer kva brukaren kan skriva inn.
Referer til Pattern_Field i wikien for meir informasjon.

LiteralMask: inneheld startverdiane som vert viste i mønsterfeltet

### Returverdi:

Ein førekomst av tenesta SFDialogs.DialogControl eller Nothing.

### Eksempel:

##### I Basic

         Set myPatternField = oDlg.CreatePatternField("PatternField1", Array(20, 20, 60, 15), EditMask := "NNLNNLLLLL", LiteralMask := "__.__.2002")

##### I Python

         myPatternField = dlg.CreatePatternField('PatternField1', (20, 20, 60, 15), EditMask = 'NNLNNLLLLL', LiteralMask = '__.__.2002')

## CreateProgressBar

Lagar eit nytt kontrollelement av typen ProgressBar i det gjeldande dialogvindauget.

### Syntaks:

svc.CreateProgressBar(ControlName: str, opt Place: any, Border: str = "3D", MinValue: num = 0, MaxValue: num = 100): svc

### Parametrar:

Kontrollnamn: namnet på det nye kontrollelementet. Det treng ikkje finnast førebels.

Place: anten …

- ei Basic matrise eller Python tuple med 4 element: (X, Y, breidd, høgd)

- eit com.sun.star.awt.Rectangle [X, Y, Breidd, Høgd]-objekt

Alle elementa er uttrykte i Map AppFont-einingar.

Border: "3D" (standard), "FLAT" eller "NONE"

MinValue: den lågaste verdien som kan skrivast inn i kontrollelementet. Standard = 0

MaxValue: den høgaste verdien som kan skrivast inn i kontrollelementet. Standard = 100

### Returverdi:

Ein førekomst av tenesta SFDialogs.DialogControl eller Nothing.

### Eksempel:

##### I Basic

         Set myProgressBar = oDlg.CreateProgressBar("ProgressBar1", Array(20, 20, 60, 15), MaxValue := 1000)

##### I Python

         myProgressBar = dlg.CreateProgressBar('ProgressBar1', (20, 20, 60, 15), MaxValue = 1000)

## CreateRadioButton

Lagar eit nytt kontrollelement av typen RadioButton i det gjeldande dialogvindauget.

### Syntaks:

svc.CreateRadioButton(ControlName: str, Place: any, MultiLine: bool = False): svc

### Parametrar:

Kontrollnamn: namnet på det nye kontrollelementet. Det treng ikkje finnast førebels.

Place: anten …

- ei Basic matrise eller Python tuple med 4 element: (X, Y, breidd, høgd)

- eit com.sun.star.awt.Rectangle [X, Y, Breidd, Høgd]-objekt

Alle elementa er uttrykte i Map AppFont-einingar.

MultiLine: Når Sann (standard = Usann), kan biletteksten visast på meir enn éi linje.

### Returverdi:

Ein førekomst av tenesta SFDialogs.DialogControl eller Nothing.

### Eksempel:

##### I Basic

         Set myRadioButton = oDlg.CreateRadioButton("RadioButton1", Array(20, 20, 60, 15), MultiLine := True)

##### I Python

         myRadioButton = dlg.CreateRadioButton('RadioButton1', (20, 20, 60, 15), MultiLine = True)

## CreateScrollBar

Lagar eit nytt kontrollelement av typen ScrollBar i det gjeldande dialogvindauget.

### Syntaks:

svc.CreateScrollBar(ControlName: str, Place, Orientation: str, Border: str = "3D", MinValue: num = 0, MaxValue: num = 100): svc

### Parametrar:

Kontrollnamn: namnet på det nye kontrollelementet. Det treng ikkje finnast førebels.

Place: anten …

- ei Basic matrise eller Python tuple med 4 element: (X, Y, breidd, høgd)

- eit com.sun.star.awt.Rectangle [X, Y, Breidd, Høgd]-objekt

Alle elementa er uttrykte i Map AppFont-einingar.

Orientation: for vassrett orientering bruk «H» eller «Horizontal»; for loddrett orientering «V» eller «Vertical».

Border: "3D" (standard), "FLAT" eller "NONE"

MinValue: den lågaste verdien som kan skrivast inn i kontrollelementet. Standard = 0

MaxValue: den høgaste verdien som kan skrivast inn i kontrollelementet. Standard = 100

### Returverdi:

Ein førekomst av tenesta SFDialogs.DialogControl eller Nothing.

### Eksempel:

##### I Basic

         Set myScrollBar = oDlg.CreateScrollBar("ScrollBar1", Array(20, 20, 60, 15), MaxValue := 1000)

##### I Python

         myScrollBar = dialog.CreateScrollBar('ScrollBar1', (20, 20, 60, 15), MaxValue = 1000)

## CreateTableControl

Lagar eit nytt kontrollelement av typen TableControl i det gjeldande dialogvindauget.

### Syntaks:

svc.CreateTableControl(ControlName: str, Place: any, Border: str = "3D", RowHeaders: bool = True, ColumnHeaders: bool = True, ScrollBars: str = "N", GridLines: bool = False): svc

### Parametrar:

Kontrollnamn: namnet på det nye kontrollelementet. Det treng ikkje finnast førebels.

Place: anten …

- ei Basic matrise eller Python tuple med 4 element: (X, Y, breidd, høgd)

- eit com.sun.star.awt.Rectangle [X, Y, Breidd, Høgd]-objekt

Alle elementa er uttrykte i Map AppFont-einingar.

Border: "3D" (standard), "FLAT" eller "NONE"

RowHeaders: når Sann (standard) vert radoverskriftene viste

ColumnHeaders: når Sann (standard) vert kolonneoverskriftene viste

ScrollBars: moglege verdiar er: "H" eller "Horizontal" (vassrette rullefelt), "V" eller "Vertical" (loddrette rullefelt); "B" eller "Both" (begge rullefelta); "N" eller "None" (standard) for ingen rullefelt. Rullefelta vert viste dynamiske når dei trengst.

GridLines: når TSann (dstandard = Usann) det vert viste vassrette og loddrette injer mellom rutenettcellene.

### Returverdi:

Ein førekomst av tenesta SFDialogs.DialogControl eller Nothing.

### Eksempel:

##### I Basic

         Set myTableControl = oDlg.CreateTableControl("TableControl1", Array(20, 20, 60, 15), ScrollBars := "B")

##### I Python

         myTableControl = dlg.CreateTableControl('TableControl1', (20, 20, 60, 15), ScrollBars = 'B')

## CreateTextField

Lagar eit nytt kontrollelement av typen TextField i det gjeldande dialogvindauget.

### Syntaks:

svc.CreateTextField(ControlName: str, Place: any, Border: str = "3D", MultiLine: bool = False, MaximumLength: num = 0, PasswordCharacter: str = ""): svc

### Parametrar:

Kontrollnamn: namnet på det nye kontrollelementet. Det treng ikkje finnast førebels.

Place: anten …

- ei Basic matrise eller Python tuple med 4 element: (X, Y, breidd, høgd)

- eit com.sun.star.awt.Rectangle [X, Y, Breidd, Høgd]-objekt

Alle elementa er uttrykte i Map AppFont-einingar.

Border: "3D" (standard), "FLAT" eller "NONE"

MultiLine: Når Sann (standard = Usann), kan biletteksten visast på meir enn éi linje.

MaximumLength: den høgaste teiknteljinga (standard = 0 betyr uavgrensa)

PasswordCharacter: eit enkelt teikn som spesifiserer ekkoet for passordfeltet (standard = "")

### Returverdi:

Ein førekomst av tenesta SFDialogs.DialogControl eller Nothing.

### Eksempel:

##### I Basic

    Set myTextField = oDlg.CreateTextField("TextField1", Array(20, 20, 120, 50), MultiLine := True)

##### I Python

         myTextField = dlg.CreateTextField('TextField1', (20, 20, 120, 50), MultiLine = True)

## CreateTimeField

Lagar eit nytt kontrollelement av typen TimeField i det gjeldande dialogvindauget.

### Syntaks:

svc.CreateTimeField(ControlName: str, Place: any, Border: str = "3D", MinTime: num = 0, MaxTime: num = 24): svc

### Parametrar:

Kontrollnamn: namnet på det nye kontrollelementet. Det treng ikkje finnast førebels.

Place: anten …

- ei Basic matrise eller Python tuple med 4 element: (X, Y, breidd, høgd)

- eit com.sun.star.awt.Rectangle [X, Y, Breidd, Høgd]-objekt

Alle elementa er uttrykte i Map AppFont-einingar.

Border: "3D" (standard), "FLAT" eller "NONE"

MinTime: den lågaste tidsverdien som kan skrivast inn i kontrollelementet. Standard = 0

MaxTime: den høgaste tidsverdien som kan skrivast inn i kontrollelementet. Standard = 24h

### Returverdi:

Ein førekomst av tenesta SFDialogs.DialogControl eller Nothing.

### Eksempel:

##### I Basic

         Set myTimeField = oDlg.CreateTimeField("TimeField1", Array(20, 20, 60, 15))

##### I Python

         myTimeField = dlog.CreateTimeField('TimeField1', (20, 20, 60, 15))

## CreateTreeControl

Lagar eit nytt kontrollelement av typen TreeControl i det gjeldande dialogvindauget.

### Syntaks:

svc.CreateTreeControl(ControlName: str, Place: any, Border = "3D"): svc

### Parametrar:

Kontrollnamn: namnet på det nye kontrollelementet. Det treng ikkje finnast førebels.

Place: anten …

- ei Basic matrise eller Python tuple med 4 element: (X, Y, breidd, høgd)

- eit com.sun.star.awt.Rectangle [X, Y, Breidd, Høgd]-objekt

Alle elementa er uttrykte i Map AppFont-einingar.

Border: "3D" (standard), "FLAT" eller "NONE"

### Returverdi:

Ein førekomst av tenesta SFDialogs.DialogControl eller Nothing.

### Eksempel:

##### I Basic

         Set myTreeControl = oDlg.CreateTreeControl("TreeControl1", Array(20, 20, 60, 15))

##### I Python

         myTreeControl = dlg.CreateTreeControl('TreeControl1', (20, 20, 60, 15))

## EndExecute

Avsluttar visinga av eit modalt dialogvindauge og returnerer argumentet som returverdi for den gjeldande køyrehandlinga Execute ().

EndExecute() er til vanleg å finna i handsaminga av ein makro som er utløyst av ei hending i eit dialogvindauge eller eit kontrollelement.

### Syntaks:

svc.EndExecute(returnvalue: int)

### Parametrar:

returverdi: Verdien som vert sendt til den køyrande Execute()-metoden.

### Eksempel:

##### I Basic

          Sub OnEvent(poEvent As com.sun.star.lang.EventObject)
              Dim oDlg As Object
              Set oDlg = CreateScriptService("SFDialogs.DialogEvent", poEvent)
              oDlg.EndExecute(ReturnValue := 25)
          End Sub

##### I Python

         from com.sun.star.lang import EventObject
         def on_event(event: EventObject):
             dlg = CreateScriptService("SFDialogs.DialogEvent", event)
             dlg.EndExecute(25)

Overnemnde com.sun.star.lang.EventObject er valfrie. Slike merknadar hjelper til med å identifisera LibreOffice Application Programming Interface (API).

## Execute

Viser dialogvindauget og ventar, når modal, på avslutning av brukaren. Den returnerte verdien er anten:

- 0: knappen Avbryt er trykt

- 1: knappen OK er trykt

- Elles vart dialogvindauget stoppa med eit EndExecute()-uttrykk sendt frå ei hending i eit dialogvindauge eller eit kontrollelement

For ikkje-modale dialogvindauge returnerer metoden alltid 0 og utføringa av makroen held fram-.

### Syntaks:

svc.Execute(modal: bool = True): int

### Parametrar:

modal: Usann ved eit ikkje-modalt dialogvindauge. Standard = Sann .

### Eksempel:

I dette Basic-eksempelet er dialogvindauget myDialog lagra i det gjeldande dokumentet sitt Standard-bibliotek.

          Dim oDlg As Object, lReturn As Long
          Set oDlg = CreateScriptService("SFDialogs.Dialog", , , "myDialog")
          lReturn = oDlg.Execute(Modal := False)
          Select Case lReturn
              ' ...
          End Select

Denne Python-koden viser det modale dialogvindauget DlgConvert i det delte Basic-biblioteket DlgConvert.

         dlg = CreateScriptService("SFDialogs.Dialog", 'GlobalScope', 'Euro', "DlgConvert")
         rc = dlg.Execute()
         if rc == dlg.CANCELBUTTON:
             # ...

## GetTextsFromL10N

Bytar ut alle faste tekststrengar i eit dialogvindauge med den omsette versjonen basert på ein førekomst av tenesta L10N . Denne metode omsett desse strengane:

- Tittelen på dialogvindauget.

- Tittelen på desse kontrollelementtypane: knapp avkryssingsfelt, fast linje, fast tekst, gruppefelt og radioknapp.

- Statiske strengar i listefelt og kombinasjonsfelt.

- Den hjelpebobla eller hjelpteksten som kjem fram når musepeikaren vert halde over kontrollelementet.

Metoden returnerer Sann viss han lukkast.

Bruk metoden AddTextsFromDialog frå tenesta L10N for å laga ei liste over strengar som kan omsetjast i eit dialogvindauge.

### Syntaks:

svc.GetTextsFromL10N(l10n: svc): bool

### Parametrar:

l10n: Ein førekomst av tenesta L10N som dei omsette strengane vert henta frå.

### Eksempel:

Dei neste eksempla lastar inn omsette strengar og brukar dei i dialogvindauget «MinDialog»:

##### I Basic

         oDlg = CreateScriptService("Dialog", "GlobalScope", "Standard", "MyDialog")
         myPO = CreateScriptService("L10N", "/home/user/po_files/")
         oDlg.GetTextsFromL10N(myPO)
         oDlg.Execute()

##### I Python

         dlg = CreateScriptService("Dialog", "GlobalScope", "Standard", "MyDialog")
         myPO = CreateScriptService("L10N", "/home/user/po_files/")
         dlg.GetTextsFromL10N(myPO)
         dlg.Execute()

Les hjelpsida L10N service for å læra meir om korleis PO. og POT-filer vert handsama.

## OrderTabs

Set tabuleringsindeksen for ei rad kontrollelement. Sekvensen av kontrollelement er gjeven som ei rekkje kontrollelementnamn frå det første til det siste.

Kontrollelement med indeks >= 1 er ikkje tilgjengelege med TAB-tasten viss:
‒ dei ikkje er med i den gjevne lista
‒ typen er FixedLine, GroupBox eller ProgressBar
‒ dei er slått av

### Syntaks:

svc.TabsList(TabsList: num, Start: num = 1, Increment: num = 1): bool

### Parametrar:

TabsList: ei liste over gyldige namn på kontrollelement i tabuleringsrekkjefølgja

Start: tabulatorindeksen som skal brukast på det første kontrollelementet i lista. Standard = 1

Increment: avstanden mellom to nærliggjande tabulatorindeksar. Standard = 1

### Returverdi:

Returnerer Sann når han lukkast.

### Eksempel:

##### I Basic

         oDlg.OrderTabs(Array("myListBox", "myTextField", "myNumericField"), Start := 10)

##### I Python

         dlg.OrderTabs(('myListBox', 'myTextField', 'myNumericField'), Start = 10)

## Resize

Flyttar det øvre, høgre hjørnet i eit dialogvindauge til nye koordinat og/eller endrar storleiken på det. Alle avstandane vert viste i AppFont-einingar. Viss argumenta manglar, vert vindauget sett til den opphavlege storleiken. Returnerer Sann viss endringa av storleiken var vellukka.

### Syntaks:

svc.Resize(opt Left: num, opt Top: num, opt Width: num, opt Height: num): bool

### Parametrar:

Venstre: den vassrette avstanden frå øvre venstre hjørne

Topp: den loddrette avstanden frå øvste venstre hjørne

Breidd: breidda på rektangelet som inneheld dialogvindauget

Høgd: høgda på rektangelet som inneheld dialogvindauget

Argument som manglar vert ikkje endra

### Eksempel:

##### I Basic

         oDlg.Resize(1000, 2000, Height := 6000) ' Breidda er ikkje endra

##### I Python

         dlg.Resize(1000, 2000, Height = 6000)  # Breidda er ikkje endra

## SetPageManager

Definerer kva kontrollelement i eit dialogvindauge som er ansvarlege for å byta sider, noko som gjer det enklare å administrera Side-eigenskapen til eit dialogvindauge og kontrollelementa i vindauget.

Dialogvindauge kan ha fleire sider, og den synlege siden er definert av dialogeigenskapen Side. Viss eigenskapen Side er uendra, er standard synleg side lik 0 (null), noeko som betyr at ingen bestemt side er definert og alle synlege kontrollelement vert viste uavhengig av verdien sett i deira eigen Side-eigenskap.

Når eigenskapen Page for eit dialogvindauge vert endra til ein annan verdi, som 1, 2, 3 og så vidare, er det berre kontrollelementa som Page-eigenskap samsvarar med i det gjeldande dialogvindauget som vert viste.

Ved å bruka SetPageManager-metoden er det mogleg å definera fire typar sideadministratorar:

- Listeboks eller kombinasjonsboks: I dette tilfellet svarar kvar oppføring i listeboksen eller kombinasjonsboksen til ei side. Det første elementet refererer til side 1, det andre elementet refererer til side 2 og så vidare.

- Gruppe av radioknappar: Definerer ei gruppe radioknappar som vil kontrollera kva side som er synleg.

- Sekvens av knappar: definerer eit sett med knappar der kvar knapp svarar til ei side i dialogvindauget. Dette kan brukast for å etterlikna eit fanebasert grensesnitt ved å plassera knappar ved sida av kvarandre i dialogvindauget.

- Knappane Førre / Neste: definerer kva for knappar i dialogvindauget som skal brukast til å navigera til førre- eller neste-sida i dialogvindauget.

Det er mogleg å bruka ein sidehandsamingsmekanisme samtidig.

Denne metoden er meint å kallast opp bere éin gong før Execute-metoden vert kalla opp. Etterfølgjande oppkall vert ignorerte.

Viss han lukkast, returnerer denne metoden Sann.

### Syntaks:

svc.SetPageManager(pilotcontrols: str = "", tabcontrols: str = "", wizardcontrols: str = "", opt lastpage: int): bool

### Parametrar:

pilotcontrols: ei kommadelt liste over namna på kontrollane ListBox, ComboBox og RadioButton som vert brukte som sideadministratorar. For kontrollelementa «RadioButton» vert namnet spesifisert på det første elementet i gruppa som skal brukast.

tabcontrols: ei kommadelt liste over namn på knappar som vert brukite som sideadministratorar. Rekkjefølgja dei er spesifiserte i dette argumentet svarar til sidetalet dei er knytte til.

wizardcontrols: ei kommadelt liste med namna på dei to knappane som vert brukte som knappar for «Førre» og «Neste».

lastpage: nummeret på den siste tilgjengelege sida. Det vert rådd til å spesifisera denne verdien når du brukar sidehandsaminga «Førre» og «Neste».

### Eksempel:

Tenk deg eit dialogvindauge med tre sider. Dialogvindauget har ein ListBox-kontroll kalla «aPageList» som vert brukt til å kontrollera den synlege sida. I tillegg er det to knappar kalla «btnForrige» og «btnNeste» som vil verta brukte som «Førre/Neste»-knappane i dialogvindauget.

##### I Basic

        oDlg.SetPageManager(PilotControls := "aPageList", _
                               WizardControls := "btnPrevious,btnNext", _
                               LastPage := 3)
        oDlg.Execute()

##### I Python

        dlg.SetPageManager(pilotcontrols="aPageList",
                           wizardcontrols="btnPrevious,btnNext",
                           lastpage=3)
        dlg.Execute()

## Terminate

Avslutt tenesta Dialog i den gjeldande førekomsten. Returner Sann viss avslutninga lukkast.

### Syntaks:

svc.Terminate(): bool

### Eksempel:

Basic- og Python-eksempla nedanfor opnar dei ikkje-modale dialogvindauga DlgConsole og dlgTrace. Dei er lagra i dei delte biblioteka ScriptForge og Access2Base. Knappane for å lukka dialogvindauga er kopla frå, og eksplisitt avslutning vert utført på slutten av ein køyrande prosess.

I dette eksempelet erstattar ein knapp i DlgConsole hemma lukking av vindauget:

##### I Basic

         oDlg = CreateScriptService("SFDialogs.Dialog","GlobalScope","ScriptForge","DlgConsole")
         oDlg.Execute(modal:=False)
         Wait 5000
         oDlg.Terminate()

##### I Python

         from time import sleep
         dlg = CreateScriptService('SFDialogs.Dialog',"GlobalScope",'Access2Base',"dlgTrace")
         dlg.Execute(modal=False)
         sleep 5
         dlg.Terminate()

Alle ScriptForge Basic-rutinane og -identifikatorane som vert innleidde med understrek «_» er reserverte for internt bruk. Dei er ikkje meint brukte i Basic-makroar.

Liknande emne

Tenesta SFDialogs.DialogControl

Tenesta ScriptForge.UI