• Highlight current record with continousform
  • Highlight current record with continousform

    mrsiro > 10-08-18, 10:00 AM

    Chào mọi người, mình có 1 thủ thuật dùng để tô màu record khi forcus record đó. Nhưng lại bị vấn đề rất khó chịu là mỗi lần click như vậy màn hình form chớp chớp. Ai có thể giúp mình loại bỏ cái chớp khi click vào record. Hoặc có cách khác để ko còn bị chớp nữa thì giúp mình với. 
    Link demo
    https://www.dropbox.com/s/ydqevsdr94frqqv/db33.zip?dl=0
  • RE: Highlight current record with continousform

    cpucloi > 10-08-18, 12:25 PM

    Bạn không chia sẻ thì sao giúp được?
  • RE: Highlight current record with continousform

    mrsiro > 10-08-18, 05:53 PM

    link tải demo ở trên đó bạn
  • RE: Highlight current record with continousform

    ongke0711 > 11-08-18, 01:17 AM

    Cái lỗi nhấp nháy này của Access cũng vô chừng lắm, có máy bị có máy không. Đó là do lỗi của Ms Access.
    Để giảm nhấp nháy thì bạn dùng cách tạo độ trễ cho việc refresh cái form một chút,
    Tôi dùng thử cả 2 cái hàm DoEvents Sleep API thì thấy hàm Sleep hiệu quả hơn.
    Và cách highligh dòng thì tôi không dùng Conditional Formating mà dùng code VBA.

    Link: http://www.mediafire.com/file/t2heyuadnk...2.mdb/file

    Mã PHP:
    Option Compare Database
    Option Explicit

    Private Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)
    Dim curID As Integer

    Private Sub Detail_Paint()
       If Me.curID Then
           Me
    .Detail.BackColor 16776960
       Else
           Me
    .Detail.BackColor RGB(187182174'16777215'
       End If
    End Sub

    Private Sub Form_Current()
       curID Nz(Me.a0)
       'DoEvents'
       Sleep 50
    End Sub 
  • RE: Highlight current record with continousform

    cpucloi > 11-08-18, 08:01 AM

    Ngoài ra, nó phụ thuộc vào cấu hình máy của bạn, nếu ngon thì tần suất chớp sẽ rất nhanh khiến mình không cảm thấy và ngược lại
  • RE: Highlight current record with continousform

    mrsiro > 11-08-18, 09:10 AM

    (11-08-18, 01:17 AM)ongke0711 Đã viết: Cái lỗi nhấp nháy này của Access cũng vô chừng lắm, có máy bị có máy không. Đó là do lỗi của Ms Access.
    Để giảm nhấp nháy thì bạn dùng cách tạo độ trễ cho việc refresh cái form một chút,
    Tôi dùng thử cả 2 cái hàm DoEvents Sleep API thì thấy hàm Sleep hiệu quả hơn.
    Và cách highligh dòng thì tôi không dùng Conditional Formating mà dùng code VBA.

    Link: http://www.mediafire.com/file/t2heyuadnk...2.mdb/file

    sao demo này của bạn nó ko còn highlight record nữa vậy bạn.
    Ở demo của mình mục đích của me.refresh là để nó hiện highlight record, nếu ko có lệnh này thì ấn vào record nó ko highlight liền. Mình nghĩ nếu có 1 code nào khác có thể thay thế cái me.refresh, nguyên nhân của việc chớp chớp là do cái me.refresh này.
  • RE: Highlight current record with continousform

    ongke0711 > 11-08-18, 09:34 AM

    Highlight xanh chói lói vậy mà bạn nói không à...Bạn xem lại event phần Detail có chưa.

    [Hình: 42162375930_72674eefce_c.jpg]
  • RE: Highlight current record with continousform

    mrsiro > 11-08-18, 09:48 AM

    mở bằng access 2003 ko có tác dụng bạn ơi
  • RE: Highlight current record with continousform

    ongke0711 > 11-08-18, 10:13 AM

    Debug có báo lỗi gì không?
    Bạn nào khác có Office 2003 test thử giùm. Code chẳng có gì đặc biệt mà phiên bản Access thấp hơn không có.
    Xem lại cái biến CurID, có thể đổi lại thành String theo như Table của bạn thiết lập.

    Nếu bạn dùng Win 64 bit thì khai báo lại cái hàm API theo kiểu 64 bit như nhiều bài đã đề cập rồi.

    Mã PHP:
    #If VBA7 Then
     
       Private Declare PtrSafe Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As LongPtr)
    #Else
       Private Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)
    #End If 
  • RE: Highlight current record with continousform

    DooHoaangPhuuc > 11-08-18, 12:00 PM

    (11-08-18, 01:17 AM)ongke0711 Đã viết:
    Cái lỗi nhấp nháy này của Access cũng vô chừng lắm, có máy bị có máy không. Đó là do lỗi của Ms Access.

    Để giảm nhấp nháy thì bạn dùng cách tạo độ trễ cho việc refresh cái form một chút,

    Tôi dùng thử cả 2 cái hàm DoEvents Sleep API thì thấy hàm Sleep hiệu quả hơn.

    Và cách highligh dòng thì tôi không dùng Conditional Formating mà dùng code VBA.



    Cái lỗi nhấp nháy này của Access cũng vô chừng lắm, có máy bị có máy không. Đó là do lỗi của Ms Access.

    Để giảm nhấp nháy thì bạn dùng cách tạo độ trễ cho việc refresh cái form một chút,

    Tôi dùng thử cả 2 cái hàm DoEvents Sleep API thì thấy hàm Sleep hiệu quả hơn.

    Và cách highligh dòng thì tôi không dùng Conditional Formating mà dùng code VBA.






    Cháu xin hỏi :  Khi chọn record trên thanh cuộn croll bar bên trái thì không có tác dụng highlight cho record mới chọn (trừ khi có  tác động khác trên form như minimize rồi restore thì mới chuyển record highlight. Như vậy khắc phục ra sao ?
    Cháu xin cảm ơn.
    DooHoaangPhuuc