ACC: วิธีการที่ตรวจหาเวลาว่างของผู้ใช้หรือไม่มีผล

ข้อมูลสำคัญ: บทความนี้แปลโดยซอฟต์แวร์การแปลด้วยคอมพิวเตอร์ของ Microsoft แทนที่จะเป็นนักแปลที่เป็นบุคคล Microsoft มีบทความที่แปลโดยนักแปลและบทความที่แปลด้วยคอมพิวเตอร์ เพื่อให้คุณสามารถเข้าถึงบทความทั้งหมดในฐานความรู้ของเรา ในภาษาของคุณเอง อย่างไรก็ตาม บทความที่แปลด้วยคอมพิวเตอร์นั้นอาจมีข้อบกพร่อง โดยอาจมีข้อผิดพลาดในคำศัพท์ รูปแบบการใช้ภาษาและไวยากรณ์ เช่นเดียวกับกรณีที่ชาวต่างชาติพูดผิดเมื่อพูดภาษาของคุณ Microsoft ไม่มีส่วนรับผิดชอบต่อความคลาดเคลื่อน ความผิดพลาดหรือความเสียหายที่เกิดจากการแปลเนื้อหาผิดพลาด หรือการใช้บทแปลของลูกค้า และ Microsoft มีการปรับปรุงซอฟต์แวร์การแปลด้วยคอมพิวเตอร์อยู่เป็นประจำ

ต่อไปนี้เป็นฉบับภาษาอังกฤษของบทความนี้:128814
บทความนี้ถูกเก็บถาวรแล้วเนื้อหาของบทความจึงถูกนำเสนอ "ตามลักษณะที่เป็น" และจะไม่มีการปรับปรุงข้อมูลอีก
moderate: ต้องแมโครพื้นฐาน รหัส และทักษะในการทำงานร่วมกัน
สรุป
บทความนี้แสดงวิธีการสร้างกระบวนการที่จะเรียกใช้ถ้าโปรแกรมประยุกต์ของ Microsoft ในการเข้าถึงของคุณไม่พบการป้อนข้อมูลผู้ใช้ใด ๆ สำหรับรอบระยะเวลาที่ระบุ

บทความนี้อนุมานว่า คุณไม่คุ้นเคย กับ Visual Basic สำหรับโปรแกรมประยุกต์ และ มีการสร้างโปรแกรมประยุกต์ของ Microsoft ในการเข้าถึงการใช้เครื่องมือเขียนโปรแกรมที่ให้มาพร้อมกับ Microsoft Access สำหรับข้อมูลเพิ่มเติมเกี่ยวกับ Visual Basic สำหรับโปรแกรมประยุกต์ โปรดอ้างถึงคู่มือ "อาคารแอปพลิเคชัน"

หมายเหตุ: Visual Basic สำหรับโปรแกรมประยุกต์ (ที่ใช้ใน Microsoft Access 7.0 และ Microsoft Access 97) จะเรียกว่าการเข้าถึงแบบพื้นฐานในรุ่น 2.0

หมายเหตุ: บทความนี้อธิบายเทคนิคหนึ่งที่แสดงในแฟ้มตัวอย่าง FrmSampl.exe (สำหรับการเข้าถึงของ Microsoft สำหรับ Windows 95 รุ่น 7.0) และ FrmSmp97.exe (สำหรับ Microsoft Access 97) สำหรับข้อมูลเกี่ยวกับวิธีการขอรับแฟ้มเหล่านี้ตัวอย่าง โปรดดูบทความในฐานความรู้ของ Microsoft ต่อไปนี้:
150895ACC95: แบบตัวอย่างของ Microsoft ในการเข้าถึงฟอร์มพร้อมใช้งานในศูนย์ดาวน์โหลด
175066ACC97: Microsoft Access 97 ตัวอย่างฟอร์มพร้อมใช้งานในศูนย์ดาวน์โหลด
ข้อมูลเพิ่มเติม

วิธีการสร้างฟอร์ม DetectIdleTime

  1. สร้างฟอร์มที่ว่างที่ไม่ใช้ตารางหรือแบบสอบถามใด ๆ และชื่อ DetectIdleTime
  2. การตั้งค่าคุณสมบัติของแบบฟอร์มต่อไปนี้:
    OnTimer: [กระบวนงานเหตุการณ์]
    TimerInterval: 1000
    หมายเหตุ: TimerInterval การตั้งค่าบ่งชี้ความถี่ (เป็นมิลลิวินาที) แอพลิเคชันตรวจสอบไม่มีผลงานของผู้ใช้ การตั้งค่า 1000 เท่ากับ 1 วินาที
  3. ป้อนรหัสต่อไปนี้สำหรับกระบวนงานเหตุการณ์ของคุณสมบัติ OnTimer:

    หมายเหตุ: ในโค้ดตัวอย่างต่อไปนี้ ขีดข้อล่าง (_) เมื่อสิ้นสุดของบรรทัดมีใช้เป็นอักขระที่มีต่อของบรรทัด เอาการขีดล่างจากจุดสิ้นสุดของบรรทัดเมื่อ re-creating รหัสนี้ในการเข้าถึงแบบพื้นฐาน
          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. สร้างขั้นตอนต่อไปนี้ในโมดูลฟอร์ม:
           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						

วิธีการใช้ฟอร์ม DetectIdleTime

เมื่อต้องการซ่อนฟอร์ม DetectIdleTime เมื่อเปิดโปรแกรมประยุกต์ สร้างแมโคร AutoExec ต่อไปนี้:
   Macro Name   Action   ---------------------   AutoExec     OpenForm   AutoExec Actions   ----------------------------   OpenForm:      Form Name: DetectIdleTime      View: Form      Filter Name:      Where Condition:      Data Mode: Edit      Window Mode: Hidden				
คุณสามารถเพิ่มรหัสขั้นตอนการ IdleTimeDetected เพื่อให้วิธีการทำงานหากไม่มีกิจกรรมของผู้ใช้สำหรับจำนวนของเวลาที่ระบุในค่าคงของ IDLEMINUTES ตัวอย่างเช่น คุณอาจมีการเข้าถึง Microsoft ออกจากกับกระบวนงานเหตุการณ์ต่อไปนี้:

ใน Microsoft Access 7.0 และ 97:
   Sub IdleTimeDetected (ExpiredMinutes)      Application.Quit acSaveYes   End Sub				
ใน Microsoft Access 2.0:
   Sub IdleTimeDetected (ExpiredMinutes)      Application.Quit A_SAVE   End Sub				
ขั้นตอนนี้ทำให้การเข้าถึงของ Microsoft เพื่อออกจากโปรแกรมประยุกต์ การบันทึกวัตถุทั้งหมดโดยไม่ต้องการแสดงในกล่องโต้ตอบ
ข้อมูลอ้างอิง
สำหรับข้อมูลเพิ่มเติมเกี่ยวกับเหตุการณ์จับเวลา ดัชนีวิธีใช้สำหรับการค้นหาเหตุการณ์ของตัวจับเวลา.

คำเตือน: บทความนี้ได้รับการแปลโดยอัตโนมัติ

คุณสมบัติ

รหัสบทความ: 128814 - การตรวจสอบครั้งสุดท้าย: 12/04/2015 11:14:44 - ฉบับแก้ไข: 2.0

Microsoft Access 2.0 Standard Edition, Microsoft Access 97 Standard Edition

  • kbnosurvey kbarchive kbhowto kbprogramming kbusage kbmt KB128814 KbMtth
คำติชม