Barvna shema: Svetla
Trenutno dejavna stran: start » sl » Dokumentacija » Orodja za Microsoft Access » WKL Forms Object Library » how-to » Določitev enake glave za vse strani

Določitev enake glave za vse strani

Lupini aplikacije dajte eno glavo za vse njene strani – naslov, podnaslov, ukaze strani in stanje – namesto gumbov in oznak, ki jih vsaka stran ali lupina postavlja in meri sama.

Zahteva WKL Forms Object Library 1.46 ali novejšo različico.

Pregled rešitve

  • En WklActionBar v lupini, nad podobrazcem, ki prikazuje strani (sfPage).
  • Lupina nastavi ukaze strani, ko prikaže stran: eno besedilo JSON za vsako stran ali ClearCommands in AddCommand.
  • Ena dogodkovna procedura izvede vsak ukaz: CommandClick(Key) ključ preda proceduri, ki ve, kaj naredi posamezen ključ.
  • Stanje zapisa ukaze po ključu omogoči in onemogoči, na primer po dogodku CommandStateChange seznama.

Izvedba

V modulu obrazca lupine frmShell (vrstica barShell, podobrazec strani sfPage):

Option Compare Database
Option Explicit
 
Public Sub ShowPage(ByVal pageForm As String)
    Me!sfPage.SourceObject = pageForm
    With Me!barShell.Object
        .Caption = Me!sfPage.Form.Caption
        .Subtitle = Nz(Me!sfPage.Form.Tag, "")
        .ClearCommands
        Select Case pageForm
            Case "frmOsebe"
                .AddCommand "nov", "&Nov", "E710", wcpStandard, "^N"
                .AddCommand "uredi", "&Uredi", "E70F"
                .AddCommand "izbrisi", "&Izbriši", "E74D"
                .AddCommand "izdaj", "Izdaj &ključ ...", "E8D7", wcpPrimary
                .AddCommand "izdaj-test", "Izdaj &preskusni ključ ...", "", , , "izdaj"
                .AddCommand "preklici", "P&rekliči ključ ...", "", wcpMenu
                .AddCommand "stolpci", "Ponastavi &stolpce", "", wcpMenu, , , , True
        End Select
        .AddCommand "export", "Iz&vozi ...", "EDE1", wcpRight
        .AddCommand "refresh", "&Osveži", "E72C", wcpRight, "{F5}"
    End With
End Sub
 
Private Sub barShell_CommandClick(ByVal Key As String)
    Select Case Key
        Case "nov": Me!sfPage.Form!grdList.Object.NewRecord
        Case "uredi": Me!sfPage.Form!grdList.Object.EditSelected
        Case "izbrisi": Me!sfPage.Form!grdList.Object.DeleteSelected
        Case "refresh": Me!sfPage.Form!grdList.Object.Requery
        Case "export": Me!sfPage.Form!grdList.Object.ShowExportDialog
        Case Else: RunPageCommand Key
    End Select
End Sub
 
' Called by the page after its list changed what can be done (CommandStateChange of WklGrid).
Public Sub ListStateChanged(ByVal grid As Object)
    With Me!barShell.Object
        .CommandEnabled("nov") = grid.CanAdd
        .CommandEnabled("uredi") = grid.CanEdit
        .CommandEnabled("izbrisi") = grid.CanDelete
    End With
End Sub
 
Private Sub RunPageCommand(ByVal Key As String)
    ' The commands only this page has, for example opening a dialog.
End Sub

Opombe

  • Lupina, ki za vsako stran hrani en nabor, lahko vsakega shrani kot besedilo JSON in ga dodeli z .Commands = text; besedilo z napako je zavrnjeno v celoti, vrstica pa obdrži svoje ukaze.
  • Oznaka stanja pokaže, kaj počne celotna aplikacija, na primer .StatusText = "osveženo " & Format(Now, "hh:nn:ss") z .StatusKind = wskOk.
  • Vsako bližnjico navedite enkrat: v vrstici (Shortcut ukaza) ali v WklDockLayout.ShortcutKeys, ne na obeh mestih.
  • Pas vrstice sprejme BackColor in ForeColor; vrstica z ukazi obdrži barvo okna, zato gumbi ostanejo berljivi tudi na temnem pasu.
  • Ukazi, nastavljeni s kodo v pogledu obrazca, obrazca ne označijo kot spremenjenega; ukazi, nastavljeni v pogledu načrta (s kodo ali v oblikovalniku), se shranijo z obrazcem.

Sorodne teme

sl/wiki/msaccess/comctl/how-to/give-every-page-the-same-header.txt · Zadnja sprememba: uporabnika Wolfgang van der Stille