Besturingselementen voor dialoogvensters in detail
- Werken met dialoogvensters
- Eigenschappen
- Gebeurtenissen
- Elementen voor beheer dialoogvenster
Apache OpenOffice BASIC herkent een bereik aan besturingselementen welke kunnen worden onderverdeeld in de volgende groepen:
Invoervelden | Knoppen | Keuzelijsten | Anders |
---|---|---|---|
|
|
Knoppen
Een knop voert een actie uit als u er op klikt.
Het eenvoudigste scenario voor de knop is om een gebeurtenis Actie uitvoeren te activeren als er op wordt gedrukt door een gebruiker. U kunt ook andere acties aan de knop koppelen om een dialoogvenster te sluiten met behulp van de eigenschap PushButtonType. Als u klikt op een knop die deze eigenschap heeft ingesteld op de waarde 0, wordt het dialoogvenster niet beïnvloed. Als u klikt op een knop die deze eigenschap heeft ingesteld op de waarde 1, wordt het dialoogvenster gesloten en de methode Execute van het dialoogvenster geeft de waarde 1 terug (dialoogvenster reeks is correct beëindigd). Als PushButtonType de waarde 2 heeft, wordt het dialoogvenster gesloten en de methode Execute van het dialoogvenster geeft de waarde 0 terug (dialoogvenster gesloten). In de bewerker voor dialoogvensters worden de waarden voor de eigenschappen symbolisch weergegeven als Standaard (0), OK (1), Annuleren (2) en Help (3).
Het volgende zijn alle eigenschappen die beschikbaar zijn via het model van de knop:
- Model.BackgroundColor (long)
- kleur van de achtergrond
- Model.DefaultButton (Boolean)
- De knop wordt gebruikt als standaardwaarde en reageert op de Entertoets indien hij niet de focus heeft
- Model.FontDescriptor (struct)
- structuur die de details van het lettertype dat moet worden gebruikt specificeert (overeenkomend met de structuur van com.sun.star.awt.FontDescriptor)
- Model.Label (String)
- label dat wordt weergegeven op de knop
- Model.Printable (Boolean)
- het besturingselement kan worden afgedrukt
- Model.TextColor (Long)
- tekstkleur van het besturingselement
- Model.HelpText (String)
- Helptekst die wordt weergegeven wanneer u de muisaanwijzer over het besturingselement beweegt
- Model.HelpURL (String)
- URL van de online Help voor het overeenkomende besturingselement
- PushButtonType (short)
- actie die is gekoppeld aan aan de knop (0: geen actie, 1: OK, 2: Annuleren, 3: Help)
Voorbeeld
Het volgende voorbeeld laat enkele eigenschappen voor de knoppen zien:
Sub cmdButton() Dim oDialog As Object Dim ocmdButton As Object DialogLibraries.LoadLibrary( "Standard" ) oDialog = CreateUnoDialog( DialogLibraries.Standard.getByName("myDialog") ) ocmdButton = oDialog.getControl("cmdOK") With ocmdButton.getModel .Align = 1 'Oriëntatie; 0 = links, 1 = midden, 2 = rechts .FontHeight = 12 'Grootte .FontName = "FreeSans" 'Lettertype .ImageURL = ConvertToUrl("/home/mau/bien.jpg") 'Weer te geven afbeelding .ImagePosition = 1 'Positie 1 = midden rechts .PushButtonType = 1 'Type knop 1 = Accepteren End With ocmdButton = oDialog.getControl("cmdCancel") With ocmdButton.getModel .Align = 1 .FontHeight = 12 .FontName = "FreeSans" .ImageURL = ConvertToUrl("/home/mau/mal.jpg") .ImagePosition = 1 .PushButtonType = 2 'Type knop 2 = Annuleren End With oDialog.execute() oDialog.dispose() End Sub
Keuzevakken
Keuzevakken worden gebruikt om een waarde Ja of Nee vast te leggen en, afhankelijk van de modus, kunnen zij twee of drie statussen aannemen. In aanvulling op de statussen Ja en Nee, kan een keuzevak een status tussenin hebben als de corresponderende status Ja of Nee meer dan één betekenis heeft of niet helder is.
Keuzevakken verschaffen de volgende eigenschappen:
- State (Short)
- status van het keuzevak (0: nee, 1: ja, 2: status tussenin)
- Label (String)
- label voor het besturingselement
- enableTriState (Boolean)
- in aanvulling op de statussen geactiveerd en niet-geactiveerd, kunt u ook de status tussenin gebruiken
Het modelobject van een keuzevak verschaft de volgende eigenschappen:
- Model.FontDescriptor (struct)
- structuur met details van het gebruikte lettertype (overeenkomstig de structuur com.sun.star.awt.FontDescriptor)
- Model.Label (String)
- label voor het besturingselement
- Model.Printable (Boolean)
- het besturingselement kan worden afgedrukt
- Model.State (Short)
- status van het keuzevak (0: nee, 1: ja, 2: status tussenin)
- Model.Tabstop (Boolean)
- het besturingselement kan worden bereikt met de toets Tab ⇆
- Model.TextColor (Long)
- tekstkleur van het besturingselement
- Model.HelpText (String)
- Help-tekst die wordt weergegeven als u de muisaanwijzer op het besturingselement plaatst
- Model.HelpURL (String)
- URL van de online Help voor het overeenkomstige besturingselement
Voorbeeld
Het volgende voorbeeld geeft enkele van de eigenschappen voor keuzevakken weer:
Sub Keuzevak1() Dim oDialog As Object Dim oControl As Object DialogLibraries.LoadLibrary( "Standard" ) oDialog = CreateUnoDialog( DialogLibraries.Standard.getByName("MyDialog") ) 'Besturingselement Afbeelding oControl = oDialog.getControl("icFoto") 'we verbergen het oControl.Visible = False 'Keuzevak oControl = oDialog.getControl("chkImprimir") With oControl.getModel .TriState = True 'Drievoudige status End With oDialog.execute() oDialog.dispose() End Sub
Radioknoppen
Deze knoppen worden in het algemeen in groepen gebruikt en stellen u in staat één of meerdere opties te selecteren. Als u een optie selecteert, worden alle andere opties in de groep gedeactiveerd. Dit zorgt er ten alle tijde voor dat slechts één optie is ingesteld.
Een besturingselement radioknop verschaft twee eigenschappen:
- State (Boolean)
- activeert de knop
- Label (String)
- label dat wordt weergegeven naast de knop
U kunt ook de volgende eigenschappen gebruiken van het model van de radioknoppen:
- Model.FontDescriptor (struct)
- structuur met details van het lettertype dat moet worden gebruikt (overeenkomend met com.sun.star.awt.FontDescriptor)
- Model.Label (String)
- label dat wordt weergegeven op het besturingselement
- Model.Printable (Boolean)
- besturingselement kan worden afgedrukt
- Model.State (Short)
- als deze eigenschap gelijk is aan 1 wordt de optie geactiveerd, anders wordt hij gedeactiveerd
- Model.TextColor (Long)
- tekstkleur van het besturingselement
- Model.HelpText (String)
- Helptekst die wordt weergegeven als de muisaanwijzer boven het besturingselement staat
- Model.HelpURL (String)
- URL van de online Help voor het overeenkomende besturingselement
U moet ze één voor één in de reeks van activering opgeven zonder een gat er tussen (eigenschap Model.TabIndex, beschreven als Volgorde van activering in de dialoogvenster-editor) om verschillende radioknoppen in een groep te combineren. Als de reeks van activering wordt onderbroken door een ander besturingselement, dan start Apache OpenOffice automatisch met een nieuwe groep besturingselementen die kan worden geactiveerd, ongeacht de eerste groep besturingselementen.
Voorbeeld
Een voorbeeld voor de gegroepeerde radioknoppen:
Sub OptionButton1() Dim oDialog As Object Dim oControl As Object DialogLibraries.LoadLibrary( "Standard" ) oDialog = CreateUnoDialog( DialogLibraries.Standard.getByName("MyDialog") ) 'Verberg de eerdere besturingselementen. oControl = oDialog.getControl("icFoto") : oControl.Visible = False oControl = oDialog.getControl("chkImprimir") : oControl.Visible = False 'Eerste radioknop oControl = oDialog.getControl("optUbuntu") MsgBox oControl.State 'Tweede radioknop oControl = oDialog.getControl("optFedora") MsgBox oControl.State 'Derde radioknop oControl = oDialog.getControl("optArch") MsgBox oControl.State oDialog.execute() oDialog.dispose() End Sub
Tekstvelden
Tekstvelden staan gebruikers toe getallen en tekst in te voeren. De service com.sun.star.awt.UnoControlEdit vormt de basis voor tekstvelden.
Een tekstveld kan één of meer regels bevatten en kan worden bewerkt of geblokkeerd voor gebruikers-invoer. Tekstvelden kunnen ook worden gebruikt als speciale valuta en numerieke velden en ook als schermvelden voor speciale taken. Omdat deze besturingselementen zijn gebaseerd op de Uno-service UnoControlEdit, komt hun programma-gecontroleerde behandeling overeen.
Tekstvelden verschaffen de volgende eigenschappen:
- Text (String)
- huidige tekst
- SelectedText (String)
- momenteel geaccentueerde tekst
- Selection (Struct)
- alleen-lezen accentuering van details (structuur overeenkomend met com.sun.star.awt.Selection met de eigenschappen Min en Max om het begin en einde van de accentuering te specificeren)
- MaxTextLen (short)
- maximale aantal tekens dat kan worden ingevoerd in het veld
- Editable (Boolean)
- True activeert de optie om tekst in te voeren, False blokkeert de optie voor invoer (de eigenschap kan niet direct worden aangeroepen, maar alleen via IsEditable)
- IsEditable (Boolean)
- de inhoud van het besturingselement kan worden gewijzigd, alleen-lezen
De volgende eigenschappen worden verschaft via het geassocieerde object model:
- Model.Align (short)
- oriëntatie van de tekst (0: links uitgelijnd, 1: gecentreerd, 2: rechts uitgelijnd)
- Model.BackgroundColor (long)
- achtergrondkleur van het besturingselement
- Model.Border (short)
- type rand (0: geen rand, 1: 3D-rand, 2: eenvoudige rand)
- Model.EchoChar (String)
- echo-teken voor velden met wachtwoorden
- Model.FontDescriptor (struct)
- structuur met details van het lettertype dat moet worden gebruikt (overeenkomend met com.sun.star.awt.FontDescriptor)
- Model.HardLineBreaks (Boolean)
- automatische regeleinden worden permanent ingevoegd in de tekst van het besturingselement
- Model.HScroll (Boolean)
- de tekst heeft een horizontale schuifbalk
- Model.MaxTextLen (Short)
- maximale lengte van de tekst, waar 0 overeenkomt met geen beperking van de lengte
- Model.MultiLine (Boolean)
- staat invoer toe die meerdere regels beslaat
- Model.Printable (Boolean)
- het besturingselement kan worden afgedrukt
- Model.ReadOnly (Boolean)
- de inhoud van het besturingselement is alleen-lezen
- Model.Tabstop (Boolean)
- het besturingselement kan worden bereikt met de Tabtoets
- Model.Text (String)
- tekst geassocieerd met het besturingselement
- Model.TextColor (Long)
- tekstkleur van het besturingselement
- Model.VScroll (Boolean)
- de tekst heeft een verticale schuifbalk
- Model.HelpText (String)
- Helptekst die wordt weergegeven als u de muisaanwijzer op het besturingselement laat rusten
- Model.HelpURL (String)
- URL van de online Help voor het overeenkomende besturingselement
Voorbeeld
Sub TekstVeld1() Dim oDialog As Object Dim oControl As Object DialogLibraries.LoadLibrary( "Standard" ) oDialog = CreateUnoDialog( DialogLibraries.Standard.getByName("MyDialog") ) 'Het besturingselement tekstveld oControl = oDialog.getControl("txtNaam") 'Stel een eigenschap voor uitlijnen in oControl.getModel.Align=1 'Geef het dialoogvak weer oDialog.execute() 'we geven het besturingselement weer bij het sluiten MsgBox oControl.Text oDialog.dispose() End Sub
Keuzelijsten
Keuzelijsten (service com.sun.star.awt.UnoControlListBox) ondersteunen de volgende eigenschappen:
- ItemCount (Short)
- aantal elementen, alleen-lezen
- SelectedItem (String)
- tekst van geaccentueerde invoer, alleen-lezen
- SelectedItems (Array Of Strings)
- gegevensveld met geaccentueerde items, alleen-lezen
- SelectedItemPos (Short)
- aantal van de thans geaccentueerde items, alleen-lezen
- SelectedItemsPos (Array of Short)
- gegevensveld met het aantal geaccentueerde items (voor lijsten die meervoudige selecties ondersteunen), alleen-lezen
- MultipleMode (Boolean)
- True activeert de optie voor meervoudige selectie van items, False blokkeert meervoudige selecties (de eigenschap kan niet direct worden aangeroepen, maar alleen via IsMultipleMode)
- IsMultipleMode (Boolean)
- staat meervoudige selectie binnen lijsten toe, alleen-lezen
Keuzelijsten verschaffen de volgende methoden:
- addItem (Item, Pos)
- voert de in Item gespecificeerde tekst in de lijst in op de positie Pos
- addItems (ItemArray, Pos)
- voert de in de tekenreeks van gegevensveld ItemArray ingevoerde items in de lijst in op de positie Pos
- removeItems (Pos, Count)
- verwijdert Count items vanaf de positie Pos
- selectItem (Item, SelectMode)
- activeert of deactiveert accentuering voor het element dat is gespecificeerd in de tekenreeks Item afhankelijk van de Booleaanse variabele van SelectMode
- makeVisible (Pos)
- scrollt door het lijstveld zodat het met Pos gespecificeerde item zichtbaar is
Het object model van de Keuzelijsten verschaft de volgende eigenschappen:
- Model.BackgroundColor (long)
- achtergrondkleur van het besturingselement
- Model.Border (short)
- type rand (0: geen rand, 1: 3D rand, 2: eenvoudige rand)
- Model.FontDescriptor (struct)
- structuur met details van het lettertype dat moet worden gebruikt (overeenkomend met com.sun.star.awt.FontDescriptor)
- Model.LineCount (Short)
- aantal regels in besturingselement
- Model.MultiSelection (Boolean)
- staat meervoudige selectie van items toe
- Model.SelectedItems (Array of Strings)
- lijst van geaccentueerde items
- Model.StringItemList (Array of Strings)
- lijst van alle items
- Model.Printable (Boolean)
- het besturingselement kan worden afgedrukt
- Model.ReadOnly (Boolean)
- de inhoud van het besturingselement is alleen-lezen
- Model.Tabstop (Boolean)
- het besturingselement kan worden bereikt met de Tabtoets
- Model.TextColor (Long)
- tekstkleur van het besturingselement
- Model.HelpText (String)
- automatisch weergegeven Helptekst die wordt weergegeven als de muisaanwijzer boven het besturingselement staat
- Model.HelpURL (String)
- URL van de online Help voor het overeenkomende besturingselement
Keuzelijsten met invoerveld
Keuzelijsten met invoerveld (com.sun.star.awt.UnoControlComboBox service) ondersteunen de volgende eigenschappen:
Boomstructuur
Boomstructuren (com.sun.star.awt.tree.TreeControlModel service) ondersteunen de volgende eigenschappen:
Content on this page is licensed under the Public Documentation License (PDL). |