Barvna shema: Svetla
Trenutno dejavna stran: start » sl » Dokumentacija » Orodja za Microsoft Access » WKL Forms Object Library » troubleshooting » Obrazec postane počasen po obravnavi dogodkov NodeFormat ali CellFormat

Obrazec postane počasen po obravnavi dogodkov NodeFormat ali CellFormat

Razširjanje, pomikanje, razvrščanje ali filtriranje traja do ene sekunde na korak, odkar je bil vklopljen FormatEvents, da bi obravnavali NodeFormat ali CellFormat.

Okolje

Vse različice kontrolnikov WklTreeView in WklTreeList, Access za Microsoft 365.

Vzrok

NodeFormat se pojavi za vsako vidno vozlišče, CellFormat pa za vsako vidno celico, in to ob vsakem ponovnem izrisu. Access vsak klic dogodka ActiveX posreduje obrazcu, vsak klic pa stane nekaj milisekund, tudi če je procedura prazna; nekaj sto vidnih celic stane ob vsakem izrisu velik del sekunde. DLookup ali poizvedba znotraj procedure strošek še pomnoži.

Rešitev

  1. Stalno oblikovanje prenesite v podatke: ForeColorField in BoldField (drevo), pravila oblikovanja (FormatRules, drevesni seznam), ki ne potrebujejo dogodka.
  2. Pustite FormatEvents = False, razen če obrazec dogodke obravnava.
  3. Če dogodek potrebujete, naj procedura ne vsebuje poizvedb: potrebne vrednosti preberite enkrat (na primer v Dictionary v Form_Load) in jih iščite tam.
sl/wiki/msaccess/comctl/troubleshooting/slow-formatting-events.txt · Zadnja sprememba: uporabnika Wolfgang van der Stille