Barvna shema: Svetla
Trenutno dejavna stran: start » sl » Dokumentacija » Orodja za Microsoft Access » WKL Forms Object Library » Stanje in povratne informacije » WklToast » Obvestilo z razveljavitvijo

Obvestilo z razveljavitvijo

V tej vadnici zgradite seznam pravil, pri katerem brisanje pravila prikaže obvestilo „Pravilo je izbrisano“ s povezavo Razveljavi, razveljavitev pa pravilo vrne.

Predpogoji

  • Microsoft 365 Access ali Access Runtime, v 32- ali 64-bitni različici, z nameščenim paketom WKL Forms Object Library 1.34 ali novejšim, registriranim za trenutnega uporabnika sistema Windows (Namestitev izdanega paketa).
  • Nova ali obstoječa podatkovna zbirka na zaupanja vrednem mestu.

Koraki

1. Ustvarite vzorčno tabelo

Proceduro prilepite v standardni modul in jo enkrat zaženite iz okna Immediate (CreateNoteSample):

Public Sub CreateNoteSample()
    With CurrentDb
        .Execute "CREATE TABLE tblPravila (ID LONG CONSTRAINT PK_Pravila PRIMARY KEY, Name TEXT(50), Izbrisano YESNO)"
        .Execute "INSERT INTO tblPravila VALUES (1, 'Opomin po 30 dneh', False)"
        .Execute "INSERT INTO tblPravila VALUES (2, 'Popust od 1.000 EUR', False)"
    End With
End Sub

2. Nastavite sklic

V urejevalniku VBA izberite Orodja › Sklici (Tools › References) in potrdite WKL Forms x.y Object Library. WklToast ni kontrolnik, zato Access sklica ne nastavi sam.

3. Ustvarite obrazec

Ustvarite neprekinjeni obrazec frmPravila z virom zapisov SELECT * FROM tblPravila WHERE Not Izbrisano, poljem z besedilom Name, vezanim na Name, in ukaznim gumbom cmdIzbrisi (napis Izbriši) v odseku s podrobnostmi.

4. Napišite modul

Option Compare Database
Option Explicit
 
Private WithEvents mToast As WklToast
 
Private Sub Form_Load()
    Set mToast = New WklToast
End Sub
 
Private Sub cmdIzbrisi_Click()
    Dim id As Long, ruleName As String
    If IsNull(Me!ID) Then Exit Sub
    id = Me!ID
    ruleName = Me!Name
    CurrentDb.Execute "UPDATE tblPravila SET Izbrisano = True WHERE ID = " & id, dbFailOnError
    Me.Requery
    mToast.Show "Pravilo """ & ruleName & """ je izbrisano.", wtkSuccess, , "Razveljavi", id
End Sub
 
Private Sub mToast_Action(ByVal Id As Long, ByVal Tag As Variant)
    CurrentDb.Execute "UPDATE tblPravila SET Izbrisano = False WHERE ID = " & Tag, dbFailOnError
    Me.Requery
End Sub

5. Preizkusite

Odprite obrazec in pri prvem pravilu kliknite Izbriši: pravilo izgine s seznama, spodaj desno v Accessovem oknu pa se prikaže zeleno obvestilo. V 8 sekundah kliknite Razveljavi ali pritisnite Ctrl+Shift+Z: pravilo se vrne. Fokus ves čas ostane v obrazcu.

Pričakovani rezultat

  • Brisanje prikaže eno obvestilo za vsako brisanje; po 8 sekundah se zapre samo.
  • Razveljavitev prek povezave, s Ctrl+Shift+Z ali s F6 in nato Enter pravilo vrne.
  • Obvestilo ostane vidno, ko se obrazec zapre, vendar njegova razveljavitev tedaj ne naredi ničesar: modul zaprtega obrazca ne posluša več. Ta primer pokriva ActionFunction (glejte navodilo).

Naslednji koraki

sl/wiki/msaccess/comctl/status-and-feedback/toast/tutorial.txt · Zadnja sprememba: uporabnika Wolfgang van der Stille