Gestion du Control ID en A

Le
mml
Bonjour et bonne année,

Question concernant les API Windows en VB6.
Comment faire pour récupérer la valeur "Control ID" d'un contrôle dont le
nom (valeur "Name") est commun à plusieurs contrôles d'un même formulaire
uniquement différenciés par ce Control ID (tel qu'il apparaît par exemple en
"Window properties" de Spy++) ?
Je tourne entre les fonctions GetWindowText, GetClassName, EnumProps sans
réussir à m'en dépétrer.
Si par hasard


begin 666 icon_biggrin.gif
M1TE&.#EA#P`/`+,-`$5%1?_J`````/_____.`/_)`/^T`/Z=`/_^D__]$___
MQ___Z__E`````````````"'Y! $```T`+ `````/`````19L$D):IVXU:40
M(A<&<$D2G,0!3$!GGG"Z:H@IP'<`:LJ;![F""H#XP7"&2E' ;#J3`-M@2AT(
E"E "L$J]JC1:`?>Z`Q,83O*70B 4WF]9IF*H&X89EF4VB0``.P``
`
end

begin 666 icon_smile.gif
M1TE&.#EA#P`/`+,.`/_J`$5%10```/_.`/_)`/^T`/Z=`/_^D__]$_______
MQS,S,___Z__E`````````"'Y! $```X`+ `````/`````1;T$D9:IW85:;.
M&1<6< @"G(,13$$G""?PIJMVF'$.:@H.GS^"*G #QH*%RB''!!"2`=.B"5@
G*P/9:[L5K@)906(%A!VFL&@P3736&J"7/X6!0KXPC##LM0F$0`[
`
end
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
parci
Le #15378271
On Wed, 2 Jan 2008 16:26:19 +0100, "mml"
Bonjour et bonne année,



Bonne année aussi,

Question concernant les API Windows en VB6.
Comment faire pour récupérer la valeur "Control ID" d'un contrôle dont le
nom (valeur "Name") est commun à plusieurs contrôles d'un même formulaire
uniquement différenciés par ce Control ID (tel qu'il apparaît par exemple en
"Window properties" de Spy++) ?
Je tourne entre les fonctions GetWindowText, GetClassName, EnumProps... sans
réussir à m'en dépétrer.



GetWindowLong avec GWL_ID pour le paramètre nIndex.
mml
Le #15376831
Bonjour,

Par contre, j'obtiens une autre valeur que le ID que je cherche.
En fait, c'est par la fonction GetDlgCtrlID que j'y arrive.

Je ne sais par quelle est la valeur que renvoie GetWindowLong avec GWL_ID
???

Merci de m'avoir répondu.

"parci" news:
On Wed, 2 Jan 2008 16:26:19 +0100, "mml"
>Bonjour et bonne année,

Bonne année aussi,

>Question concernant les API Windows en VB6.
>Comment faire pour récupérer la valeur "Control ID" d'un contrôle dont le
>nom (valeur "Name") est commun à plusieurs contrôles d'un même formulaire
>uniquement différenciés par ce Control ID (tel qu'il apparaît par exemple


en
>"Window properties" de Spy++) ?
>Je tourne entre les fonctions GetWindowText, GetClassName, EnumProps...


sans
>réussir à m'en dépétrer.

GetWindowLong avec GWL_ID pour le paramètre nIndex.



parci
Le #15356041
On Sat, 5 Jan 2008 12:24:21 +0100, "mml"
Bonjour,

Par contre, j'obtiens une autre valeur que le ID que je cherche.
En fait, c'est par la fonction GetDlgCtrlID que j'y arrive.

Je ne sais par quelle est la valeur que renvoie GetWindowLong avec GWL_ID
???



En principe, ça devrait être la même chose (personnellement je ne
trouve pas de différence entre les valeurs retournées par ces
fonctions pour des fenêtres filles, bien sur).

Serais-tu sous Vista 64 bits ? Si c'est le cas, il faudrait utiliser
GetWindowLongPtr et GWLP_ID.

http://msdn2.microsoft.com/en-us/library/aa932354.aspx

Identifiers are only valid for child windows. An application sets the
identifier by passing it in as the hMenu parameter to the
CreateWindowEx function. It can also be set and retrieved by calling
the SetWindowLong and GetWindowLong functions with the nIndex
parameter set to GWL_ID.

Although GetDlgCtrlID may return a value if hwndCtl identifies a
top-level window, top-level windows cannot have identifiers and such a
return value is never valid.
Publicité
Poster une réponse
Anonyme