Carte du site
 Remerciements
 Netiquette
 Bugs
 Tables
 Requêtes
 Formulaires
 États (rapports)
 Modules
 APIs
 Chaînes
 Date/Time
 Général
 Ressources
 Téléchargeables

 Termes d'usage

APIs: hWnd de contrôles

Author(s)
Dev Ashish

(Q) Comment mettre la main sur la poignée d'un contrôle, en cours d'exécution?

(A) Les contrôles d'Access ne sont pas des contrôles du genre de ceux de   VB.  Ceux d'Access sont tracés sur l'écran, en cours d'exécution et en tant que tel, ne possèdent pas de handle (poignée) unique comme ceux de VB.

    Lorsque un contrôle d'Access reçoit le focus, il devient une véritable fenêtre et il est alors possible d'en récupérer la poignée en utilisant la fonction API GetFocus. Par contre, puisque les contrôles d'Access ne se comportent pas du tout comme ceux de VB, il y a peu de choses qu'on peut faire avec cette poignée (handle).

********* Code Start *************
Private Declare Function apiGetFocus Lib "user32" _
        Alias "GetFocus" _
         () As Long
         
Function fhWnd(ctl As Control) As Long
    On Error Resume Next
    ctl.SetFocus
    If Err Then
        fhWnd = 0
    Else
        fhWnd = apiGetFocus
    End If
    On Error GoTo 0
End Function
'*********** Code End *************

© 1998-2001, Dev Ashish, All rights reserved. Optimized for Microsoft Internet Explorer