Je bent nu offline; er wordt gewacht tot er weer een internetverbinding is

ACC: Hoe niet-actieve tijd of inactiviteit detecteren

BELANGRIJK: Dit artikel is vertaald door de vertaalmachine software van Microsoft in plaats van door een professionele vertaler. Microsoft biedt u professioneel vertaalde artikelen en artikelen vertaald door de vertaalmachine, zodat u toegang heeft tot al onze knowledge base artikelen in uw eigen taal. Artikelen vertaald door de vertaalmachine zijn niet altijd perfect vertaald. Deze artikelen kunnen fouten bevatten in de vocabulaire, zinsopbouw en grammatica en kunnen lijken op hoe een anderstalige de taal spreekt en schrijft. Microsoft is niet verantwoordelijk voor onnauwkeurigheden, fouten en schade ontstaan door een incorrecte vertaling van de content of het gebruik ervan door onze klanten. Microsoft past continue de kwaliteit van de vertaalmachine software aan door deze te updaten.

De Engelstalige versie van dit artikel is de volgende: 128814
Dit artikel is gearchiveerd. Het wordt aangeboden in de huidige vorm en wordt niet meer bijgewerkt.
Matig: Basic macro, codering en interoperabiliteit vaardigheden vereist.
Samenvatting
In dit artikel ziet u hoe u een procedure die wordt uitgevoerd als deMicrosoft Access-toepassing geen tussenkomst van de gebruiker voor een opgegevenperiode.

In dit artikel wordt ervan uitgegaan dat u bekend bent met Visual Basic voorToepassingen en met het maken van toepassingen met behulp van dehulpprogramma's van Microsoft Access. Voor meer informatie.Raadpleeg 'Building over Visual Basic for Applications,Handmatige toepassingen".

Opmerking: Visual Basic for Applications (gebruikt in Microsoft Access 7.0 enMicrosoft Access 97) wordt Access Basic genoemd in versie 2.0.

Opmerking: Dit artikel wordt een techniek gedemonstreerd in het monster uitgelegdFrmSampl.exe (voor Microsoft Access voor Windows 95 versie 7.0)-bestandenen FrmSmp97.exe (voor Microsoft Access 97). Voor meer informatie overu kunt deze voorbeeldbestanden, raadpleegt u de volgende artikelen in deMicrosoft Knowledge Base:
150895 ACC95: Microsoft Access monster formulieren beschikbaar in Download Center
175066 ACC97: Microsoft Access 97 voorbeeldformulieren beschikbaar in Download Center
Meer informatie

Het formulier DetectIdleTime maken

  1. Maak een leeg formulier dat niet is gebaseerd op een tabel of query en de naam DetectIdleTime.
  2. Stel de volgende eigenschappen:
    OnTimer: [Gebeurtenisprocedure]
    TimerInterval: 1000
    Opmerking: De instelling Timerinterval (TimerInterval) geeft aan hoe vaak (in milliseconden) de toepassing controleert op inactiviteit van de gebruiker. Een instelling van 1000 is gelijk aan 1 tweede.
  3. Voer de volgende code voor de gebeurtenisprocedure OnTimer eigenschap:

    Opmerking: In de volgende voorbeeldcode een onderstrepingsteken (_) aan het einde van een regel wordt gebruikt als een regelvervolgteken. Verwijder het onderstrepingsteken vanaf het einde van de regel wanneer u deze code in Access Basic.
          Sub Form_Timer()         ' IDLEMINUTES determines how much idle time to wait for before         ' running the IdleTimeDetected subroutine.         Const IDLEMINUTES = 5         Static PrevControlName As String         Static PrevFormName As String         Static ExpiredTime         Dim ActiveFormName As String         Dim ActiveControlName As String         Dim ExpiredMinutes         On Error Resume Next         ' Get the active form and control name.         ActiveFormName = Screen.ActiveForm.Name         If Err Then            ActiveFormName = "No Active Form"            Err = 0         End If         ActiveControlName = Screen.ActiveControl.Name            If Err Then            ActiveControlName = "No Active Control"            Err = 0         End If         ' Record the current active names and reset ExpiredTime if:         '    1. They have not been recorded yet (code is running         '       for the first time).         '    2. The previous names are different than the current ones         '       (the user has done something different during the timer         '        interval).         If (PrevControlName = "") Or (PrevFormName = "") _           Or (ActiveFormName <> PrevFormName) _           Or (ActiveControlName <> PrevControlName) Then            PrevControlName = ActiveControlName            PrevFormName = ActiveFormName            ExpiredTime = 0         Else            ' ...otherwise the user was idle during the time interval, so            ' increment the total expired time.            ExpiredTime = ExpiredTime + Me.TimerInterval         End If         ' Does the total expired time exceed the IDLEMINUTES?         ExpiredMinutes = (ExpiredTime / 1000) / 60         If ExpiredMinutes >= IDLEMINUTES Then            ' ...if so, then reset the expired time to zero...            ExpiredTime = 0            ' ...and call the IdleTimeDetected subroutine.            IdleTimeDetected ExpiredMinutes         End If      End Sub						
  4. De volgende procedure in de formuliermodule maken:
           Sub IdleTimeDetected (ExpiredMinutes)         Dim Msg As String         Msg = "No user activity detected in the last "         Msg = Msg & ExpiredMinutes & " minute(s)!"         MsgBox Msg, 48      End Sub						

Het gebruik van het formulier DetectIdleTime

Om het formulier DetectIdleTime verbergen wanneer de toepassing wordt geopend, maakt devolgende AutoExec-macro:
   Macro Name   Action   ---------------------   AutoExec     OpenForm   AutoExec Actions   ----------------------------   OpenForm:      Form Name: DetectIdleTime      View: Form      Filter Name:      Where Condition:      Data Mode: Edit      Window Mode: Hidden				
Kunt u code aan de procedure IdleTimeDetected, die de procedureuitgevoerd als er geen gebruikersactiviteit voor de tijd opgegeven in deDe constante IDLEMINUTES. U kan bijvoorbeeld Microsoft Access hebtSluit af met de volgende gebeurtenisprocedure:

In Microsoft Access 7.0 en 97:
   Sub IdleTimeDetected (ExpiredMinutes)      Application.Quit acSaveYes   End Sub				
In Microsoft Access 2.0:
   Sub IdleTimeDetected (ExpiredMinutes)      Application.Quit A_SAVE   End Sub				
Deze procedure wordt de toepassing alle afsluitenobjecten zonder een dialoogvenster weer te geven.
Referenties
Zoek voor meer informatie over de gebeurtenis Timer de Help-IndexTimergebeurtenis.

Waarschuwing: dit artikel is automatisch vertaald

Eigenschappen

Artikel-id: 128814 - Laatst bijgewerkt: 12/04/2015 11:14:41 - Revisie: 4.0

Microsoft Access 2.0 Standard Edition, Microsoft Access 97 Standard Edition

  • kbnosurvey kbarchive kbhowto kbprogramming kbusage kbmt KB128814 KbMtnl
Feedback