Color scheme: Riviera
You are here: start » sl » Dokumentacija » Orodja za Microsoft Access » WKL Forms Object Library » how-to » Urejanje zapisov ob seznamu

Urejanje zapisov ob seznamu

Ko uporabnik izbere zapis, odprite obrazec za urejanje v podoknu desno od seznama, brez pogovornega okna in ne da bi zapustil seznam.

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

Pregled rešitve

Kontrolnik WklDrawer med seznamom in kontrolnikom podobrazca. Content navaja kontrolnik podobrazca, Open v njem prikaže obrazec, Close ga znova skrije. Obrazec za urejanje je navaden Accessov obrazec; predal ga le postavi. Na zapis ga filtrirajte v AfterOpen ali s povezovalnimi polji kontrolnika podobrazca.

Izvedba

V pogledu načrta: seznam postavite na levo, kontrolnik podobrazca sfUrejanje na desno, v vmesni prostor pa kot ozko vrstico narišite WKL Drawer (Načrt obrazca › Kontrolniki › Kontrolniki ActiveX); poimenujte ga drw1. V oblikovalniku ([...] v vrstici Po meri, stran Predal) za Vsebina izberite sfUrejanje; predogled navede kontrolnike, ki postanejo ožji.

Private Sub lstStranke_DblClick(Cancel As Integer)
    Me!drw1.Object.Open "frmStrankaUrejanje"
End Sub
 
Private Sub drw1_AfterOpen(ByVal SourceObject As String)
    ' The content is loaded now: show the chosen record.
    Me!sfUrejanje.Form.Filter = "StrankaID = " & Me!lstStranke
    Me!sfUrejanje.Form.FilterOn = True
End Sub
 
Private Sub drw1_BeforeClose(ByVal Reason As Long, Cancel As Integer)
    ' Keep the panel open while the record there has unsaved changes.
    If Me!sfUrejanje.Form.Dirty Then Cancel = True
End Sub

Različne vsebine imajo lahko lastno širino:

With Me!drw1.Object
    .Widths = "{""frmStrankaUrejanje"": 4500, ""frmMatrikaNarocil"": 9000}"
    .MinBeside = 3402            ' 6 cm of the list stay visible
    .CloseOnEscape = True        ' Esc in an unchanged record closes the panel
End With

Opombe

  • Reason dogodkov BeforeClose in Closed je WklDrawerCloseReason: wdcCode (Close, Toggle, nov Open), wdcUser (gumb za zapiranje, Enter ali preslednica na vrstici), wdcEscape.
  • Nastavitev Width s kodo ne sproži AfterResize; sprožijo ga le vlečenje, puščična tipka ali UI Automation, in le te širine se zapomnijo za uporabnika (AutoSaveLayout).
  • Sidra seznama in kontrolnika podobrazca pustite na nastavitvi zgoraj levo: predal vsako razporeditev izračuna iz položajev v načrtu. Sidra znotraj obrazca vsebine so dobrodošla; z AnchorContent jih predal uporabi.
  • Obrazec vsebine oblikujte brez vodoravnega drsnega traku in ne širšega od njegove najožje uporabe: Access dovoli, da obrazec med izvajanjem zraste, ne pa, da se skrči.
  • Dokler je zapis v vsebini spremenjen, Esc naredi to, kar naredi v Accessu (razveljavi spremembo); podokno zapre samo Esc v nespremenjenem zapisu.

Sorodne teme

sl/wiki/msaccess/comctl/how-to/edit-records-beside-the-list.txt · Last modified: by Wolfgang van der Stille