[R] Interface devant les autres mais sans le focus

Aide et conseils concernant AutoIt et ses outils.
Règles du forum
.
Répondre
matheod
Niveau 3
Niveau 3
Messages : 40
Enregistré le : mer. 07 juil. 2010 23:41
Status : Hors ligne

[R] Interface devant les autres mais sans le focus

#1

Message par matheod »

Bonjour,
J'aimerais savoir si il est possible de faire en sorte que l'interface de notre application soit devant les autres, mais sans quel prenne le focus, autrement dit, que la fenetre s'affiche mais qu'elle soit inexistante au niveau de la souris.
En gros si l'on clic sur notre application ca cliquera juste en dessous de l'application.
Merci
Bonne journée
Modifié en dernier par matheod le lun. 03 janv. 2011 21:07, modifié 1 fois.
Le "ça ne marche pas" est une conséquence commune découlant de l’absence de membres inférieures.
Avatar du membre
zeshrek
Niveau 10
Niveau 10
Messages : 984
Enregistré le : mer. 17 nov. 2010 09:31
Localisation : Sur ma chaise
Status : Hors ligne

Re: [..] Interface devant les autres mais sans le focus

#2

Message par zeshrek »

En 1 mot : Oui !
Voir les styles associés a GUICreate
Si vis pacem para bellum
matheod
Niveau 3
Niveau 3
Messages : 40
Enregistré le : mer. 07 juil. 2010 23:41
Status : Hors ligne

Re: [..] Interface devant les autres mais sans le focus

#3

Message par matheod »

Justement, j'ai cherché à ce niveau là et je n'ai pas trouvé.
Le "ça ne marche pas" est une conséquence commune découlant de l’absence de membres inférieures.
Avatar du membre
zeshrek
Niveau 10
Niveau 10
Messages : 984
Enregistré le : mer. 17 nov. 2010 09:31
Localisation : Sur ma chaise
Status : Hors ligne

Re: [..] Interface devant les autres mais sans le focus

#4

Message par zeshrek »

Et pourtant, c'est bien là. Allez, un petit indice le style a appliquer, c'est l'antépénultième*.





* Ce mot là, j'aurai jamais cru le placer sur un forum informatique !
Si vis pacem para bellum
Colin117
Niveau 5
Niveau 5
Messages : 114
Enregistré le : jeu. 18 nov. 2010 17:57
Localisation : Vers là bas !
Status : Hors ligne

Re: [..] Interface devant les autres mais sans le focus

#5

Message par Colin117 »

l'antépénultième, c'est pas l'avant dernier ? ou celui d'avant encore je sais plus xD. (oui je flood je sais je sort :()

@EDIT@

J'avais pas envie de flooder d'avantage, zeshrek ENORME ce lien O.O
Modifié en dernier par Colin117 le mer. 29 déc. 2010 11:00, modifié 2 fois.
► Afficher le texte
Avatar du membre
zeshrek
Niveau 10
Niveau 10
Messages : 984
Enregistré le : mer. 17 nov. 2010 09:31
Localisation : Sur ma chaise
Status : Hors ligne

Re: [..] Interface devant les autres mais sans le focus

#6

Message par zeshrek »

Plus d'infos ICI
(a floodeur, floodeur et demi :D)
Si vis pacem para bellum
matheod
Niveau 3
Niveau 3
Messages : 40
Enregistré le : mer. 07 juil. 2010 23:41
Status : Hors ligne

Re: [..] Interface devant les autres mais sans le focus

#7

Message par matheod »

Tu pensais à quel style ?
Car j'ai testé tout les styles positionnés en avant dernier et aucun n'a fait ce que je voulais.
Le "ça ne marche pas" est une conséquence commune découlant de l’absence de membres inférieures.
Avatar du membre
zeshrek
Niveau 10
Niveau 10
Messages : 984
Enregistré le : mer. 17 nov. 2010 09:31
Localisation : Sur ma chaise
Status : Hors ligne

Re: [..] Interface devant les autres mais sans le focus

#8

Message par zeshrek »

Bah c'est normal, l'antépénultième c'est pas l'avant dernier, mais celui d'avant !
Par contre, je me met publiquement une grosse baffe sur mon groin d'ogre, parceque je t'orientais a tort sur $DS_MODALFRAME qui n'a rien a voir avec ta demande).
Ceci dit, je ne crois pas qu'il soit possible de faire une GUI qui soit affichée mais qui quand tu cliques transmet le clic a la fenetre d'en dessous.
Si vis pacem para bellum
SagePourpre
Niveau 7
Niveau 7
Messages : 442
Enregistré le : dim. 06 juil. 2008 09:11
Status : Hors ligne

Re: [..] Interface devant les autres mais sans le focus

#9

Message par SagePourpre »

C'est très possible...
En voici un exemple.


Code : Tout sélectionner

#include <GUIConstantsEx.au3>
#include <Constants.au3>
#include <WinAPI.au3>
#include <WindowsConstants.au3>
Opt('WinWaitDelay',0) ; Important afin de minimiser le délai d'opération

$gui = GUICreate('Meh !', 300, 300, -1, -1)
$active = WinGetHandle('[ACTIVE]')  ; On récupère la fenêtre active
GUISetState()   ; La fenêtre de ton application vole le focus
WinActivate($active) ; Le focus est redonné à la fenêtre qui avait le focus juste avant
GhostWin($gui, 100)  ; La fonction qui t'intéresse 

Sleep(4000)
GhostWin($gui)
Sleep(3000)


; Crée une fenêtre OnTop avec un niveau de transparence qui laisse passer la souris au travers.
; $trans :          0-255     0 = invisible            255 = opaque ( l'attribut OnTop est également désactivé)
Func GhostWin($hWnd, $trans = 255)
    Select
        Case $trans = 255
            WinSetOnTop($hWnd, "", 0)
            WinSetTrans($hWnd, "", $trans) ; No transparency
            _WinAPI_SetWindowLong($hWnd, $GWL_EXSTYLE, _
                    BitAND(_WinAPI_GetWindowLong($hWnd, $GWL_EXSTYLE), BitNOT($WS_EX_TRANSPARENT)))
                Case Else
            WinSetOnTop($hWnd,'',1)
            WinSetTrans($gui, "", $trans)
            _WinAPI_SetWindowLong($gui, $GWL_EXSTYLE, _
                    BitOR(_WinAPI_GetWindowLong($gui, $GWL_EXSTYLE), $WS_EX_TRANSPARENT))
    EndSelect
EndFunc   ;==>GhostWin
 
Le Sage Pourpre, pour qui la vie est tellement
plus belle vue du haut de son Pouf = )
matheod
Niveau 3
Niveau 3
Messages : 40
Enregistré le : mer. 07 juil. 2010 23:41
Status : Hors ligne

Re: [..] Interface devant les autres mais sans le focus

#10

Message par matheod »

Oh merci beaucoup !
Mon sauveur ^^

Merci à tous ceux qui ont répondu à mon topic ;-)
Le "ça ne marche pas" est une conséquence commune découlant de l’absence de membres inférieures.
Répondre