bilaloch
Messages postés556Date d'inscriptionlundi 6 octobre 2003StatutMembreDernière intervention31 octobre 2019
-
16 sept. 2007 à 19:22
PCPT
Messages postés13272Date d'inscriptionlundi 13 décembre 2004StatutMembreDernière intervention 3 février 2018
-
17 sept. 2007 à 17:13
Bonjour à tous,
Mon problème est le suivant : je place une fenetre devant toutes les autres et devant la barre des taches avec "SetWindowPos(Form1.hwnd, -1, 0, 0, 0, 0, flags)". Jusque là, rien de special. Cependant, j'ai remarqué qu'en cliquant sur la barre des taches, la fenetre se replace en arriere plan avant de revenir, un certain temps apres (moins d'une seconde) devant la barre. Ma question est la suivante : comment faire pour que la fenetre reste toujours devant la barre des taches, meme si on clique sur cette meme barre ? En placant la barre des taches en arriere plan, il sera peut etre possible que ma fenetre reste devant... mais meme cela, comment le faire ?
PCPT
Messages postés13272Date d'inscriptionlundi 13 décembre 2004StatutMembreDernière intervention 3 février 201847 16 sept. 2007 à 19:35
salut,
la barre a ses propriétés.
l'une d'elle est de rester devant les autres fenêtres.
donc soit tu changes cette valeur (registre), soit tu fais un SetWindowPos en "toujours derrière".
handle de la taskbar => FindWindow("Shell_TrayWnd", vbNullString)
maintenant faut savoir que çà risque de déranger l'utilisateur, de changer ses propriétés ou tout au moins les effets sans sa permission.
surtout dans ce cas présent où ta form ne sera pas la seule à pouvoir passer au dessus
donc autre possibilité, dès que ta form perd le focus, tu la fais repasser devant par SetWindowPos, Me.SetFocus, Me.zorder vbbringtofront, ou setforegroundwindow Me.hwnd
et pour récupérer la perte de focus avec efficacité : ici
++
PCPT [AFCK]
<hr size="2" width="100%" />Prenez un instant pour répondre à [infomsg_SONDAGE-POP3-POUR-CS_769706.aspx ce sondage] svp
bilaloch
Messages postés556Date d'inscriptionlundi 6 octobre 2003StatutMembreDernière intervention31 octobre 20191 17 sept. 2007 à 17:08
Bonjour à toi,
Tout d'abord, merci de ta réponse. J'aimerais tout de même te demander si tu n'as pas, par hasard, la constante dont tu parles pour SetWindowPos ("toujours derriere"...).