SkyRocKo
Messages postés174Date d'inscriptionsamedi 10 mai 2003StatutMembreDernière intervention18 février 2006
-
8 déc. 2005 à 22:11
SkyRocKo
Messages postés174Date d'inscriptionsamedi 10 mai 2003StatutMembreDernière intervention18 février 2006
-
10 déc. 2005 à 18:42
Hello,
Je suis en train de créer un contrôle ActiveX mais je bloque sur certains points :
Premièrement, je voulais mettre une propriété de type 'boolean' qui permet de définir si le contrôle se place au 1er plan ou pas. J'ai donc utilisé l'API 'SetWindowPos' mais la, 1er problème, ça ne fonctionne pas alors que le même code fonctionne avec une Form classique !
Deuxièmement, je voulais appliquer un degré de transparence au contrôle (celui-ci contient une image) en utilisant l'API 'SetLayeredWindowAttributes' et là, même problème alors que ça fonctionne ac une Form classique.
Troisièmement, j'ai voulu détacher l'OCX de la feuille mère grâce à l'API 'SetParent' : idem que précédemment !!!
Un vrai cauchemar Je me suis demandé si ça ne provenait pas du hWnd du UserControl, et en effet, c'est fort probable car il est constamment égal à 0.
Etrange, non ???
PCPT
Messages postés13280Date d'inscriptionlundi 13 décembre 2004StatutMembreDernière intervention 3 février 201848 9 déc. 2005 à 14:09
salut,
pour test, met une propriété Get hWnd dans le contrôle, retournant UserControl.hWnd, et fait ton code à partir de la Form.
si le résultat te convient, c'est que c'est faisable et juste que tu
t'y es mal pris. (genre ... tu as pu placer tes fonction à des moments
ou le Contrôle n'est pas encore... instancié, donc sont executées en
conception)
SkyRocKo
Messages postés174Date d'inscriptionsamedi 10 mai 2003StatutMembreDernière intervention18 février 2006 10 déc. 2005 à 18:42
Salut,
Merci pour vos réponses
J'ai fait ce que pcpt m'a dit et ça ne marchait pas. J'ai donc essayé la même chose sur un autre contrôle ActiveX à moi : "AnimatedGIF", et là ça marchait impec.
J'ai simplement fait un nouvel OCX en faisant un copier-coller, et là ça marchait impec
Bizarre!
Oui ce n'est pas courant mais je voulais faire un ActiveX du genre celui qu'il y a dans "FlashGET" et "Net Transport" (qui indique l'évolution des téléchargements).
cs_Jack
Messages postés14007Date d'inscriptionsamedi 29 décembre 2001StatutModérateurDernière intervention28 août 201579 8 déc. 2005 à 22:59
Salut
Quel Handle lui as-tu fourni ?
--> UserControl.ContainerHwnd
Si tu veux qu'on t'aide, va falloir copier les quelques lignes où tu prépare et lance tes requètes API
Vala
Jack, MVP VB
NB : Je ne répondrai pas aux messages privés
Le savoir est la seule matière qui s'accroit quand on la partage. (Socrate)