Hello,
Je tourne en rond, quelqu'un parmis vous aurait t'il un code VBA permettant de récupérer le handle d'un contrôle dont le nom et le handle du formulaire sont passé en paramètres ?
J'ai essayé avec FindWindowEx mais je n'y parviens pas![]()
Hello,
Je tourne en rond, quelqu'un parmis vous aurait t'il un code VBA permettant de récupérer le handle d'un contrôle dont le nom et le handle du formulaire sont passé en paramètres ?
J'ai essayé avec FindWindowEx mais je n'y parviens pas![]()
Hey !
Dans mon tuto AccessPaint, j'avais ça :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 Option Compare Database '''""""""""""""""""""""""""""""""""""""""""""""""""""''' ' ' API user32.dll ' '''""""""""""""""""""""""""""""""""""""""""""""""""""''' Private Declare Function apiGetFocus Lib "user32" Alias "GetFocus" () As Long Function CtlhWnd(frmName As String, ctlName As String) As Long On Error Resume Next Forms(frmName).Controls(ctlName).SetFocus If Err Then CtlhWnd = 0 Else CtlhWnd = apiGetFocus End If On Error GoTo 0 End Function
J'ai fais pas mal de tutos mais pas celui là![]()
![]()
Bon c'est déjà très bien, ça correspond à mes besoins,
mais pour le fun, t'aurais pas une version sans avoir à donner le focus au contrôle ?![]()
En tout cas
Justement, n'importe quel contrôle de base on va dire :slt,
quel genre de contrôle???
Zone de texte, zone de liste, combobox, case à cocher, option et bouton.
de rien
ça va être compliqué sans le focus ... puisque les contrôles Access contrairement à VB n'ont pas d'existence au sens Windowsien du terme, il sont géré à la volée par Access.
Envoyé par Tofalu
justement ça fonctionne pas de la même manière pour tous les contrôleEnvoyé par Tofalu
Seules les zones de liste on un handle sans y mettre le focus (classe de fenêtre oGrid)
Les zones de texte ne deviennent des fenêtres que quand elles ont le focus.
les cases à cocher, boutons, images sont dessinés sur le formulaire et n'ont jamais de handle...
Il faut aller sur le site Web de Stephen Lebans (www.lebans.com)
Ou une série de modules de Classes existent pour faire ce que tu veux.
Cela fonctionne très bien pour les contrôles "intégrés" de MS/Access où il trouve facilement les handles des contrôles (boucle de scan). ATTENTION : Si trop de contrôles, le temps d'exécution risque de devenir long à chaque mouvement de souris...
J'essaye de faire la même choses pour d'autres OCX par exemple Treeview, mais n'y parvient pas.
Il semble "bloqué" sur la définition des évènements liés à MSCOMTLIB.TreeView (Microsoft Common Controls V6)
avec ...
Public Event MouseMove(Button As Integer, Shift As Integer, x As Long, y As Long)
Private Sub m_TreeView_MouseMove(Button As Integer, Shift As Integer, x As Long, y As Long)
![]()
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager