WinAmp - Comment sélectionner la bonne Fenêtre ? Topic is solved

Poser vos questions de programmation en AutoHotkey
DeeJayOne
Posts: 3
Joined: 17 Sep 2018, 14:19

WinAmp - Comment sélectionner la bonne Fenêtre ?

17 Sep 2018, 15:07

Bonjour,

J'aimerais utiliser WinAmp à l'aide d'AutoHotKey mais je n'arrive pas à sélectionner la bonne fenêtre.
Dans ma configuration actuelle, lorsque je lance WinAmp, j'ai 5 fenêtres :
  • La fenêtre principale de Winamp (Lecteur)
  • La fenêtre "Médiathèque"
  • La fenêtre "Liste de lecture"
  • La fenêtre "Jaquette"
  • La fenêtre "Vidéo"
Par défaut, lorsque je lance l'application WinAmp, C'est la fenêtre "Médiathèque" qui prend le focus (et non la fenêtre principale "lecteur")
CTRL+TAB permet de "switcher" d'une fenêtre à l'autre (je n'ai pas trouvé de raccourcis clavier qui permette de sélectionner directement la bonne fenêtre).

Dans ma configuration, l'ordre de focus des fenêtres est le suivant :
  • fenêtre "Médiathèque"
  • fenêtre principale de Winamp (Lecteur)
  • La fenêtre "Jaquette"
  • La fenêtre "Liste de lecture"
  • La fenêtre "Vidéo"
J'ai utilisé le script suivant :

Code: Select all

; https://shortcutkeys.net/winamp-shortcut-keys/

#NoEnv
#SingleInstance force
SendMode, Input
#Warn

run, winamp.exe,,, PID
WinWait % "ahk_pid " . PID
WinActivate ; pas de paramètre: on utilise la 'Last Found Window'. Or, WinWait vient de mettre à jour la 'Last Found Window'
WinWaitActive
MsgBox, Winamp is active.
Send, ^{Tab}	; change de fenêtre. (focus)
return

; Affiche la liste des commandes executées
^l::
	ListLines
	Pause
return

Lorsque je lance le script, les 2 lignes suivantes ne sont pas exécutées :
- MsgBox, Winamp is active.
- Send, ^{Tab} ; change de fenêtre. (focus)

Une petite piste à me suggérer ?
A_AhkUser
Posts: 884
Joined: 06 Mar 2017, 16:18
Location: France

Re: WinAmp - Comment sélectionner la bonne Fenêtre ?

18 Sep 2018, 15:27

Salut DeeJayOne,

Le PID est l'identifiant unique associé à une instance d'un processus donnée, de son apparition jusqu'à sa fermeture; aussi, une fois WinAmp lancé, au moins 5 fenêtres satisfont au critère passé à la commande WinWait: il appartiennent tous en effet à une instance donnée du même processus, en l'occurrence Winamp.
Autrement dit, si le programme possède une seule fenêtre ou si le script opère indifféremment sur l'ensemble des fenêtres d'une instance donnée d'un processus donnée, l'identification de la fenêtre uniquement à l'aide de son PID peut être pertinent.

Le problème réside donc ici sans doute dans l'identification de la fenêtre, qui doit être plus fine. A cette fin, autohotkey permet de spécifier plusieurs critères pour le paramètre WinTitle:

Code: Select all

run, notepad,,, PID
WinWait % "Sans titre ahk_class Notepad ahk_pid " . PID
MsgBox
On distingue en particulier:
. ahk_pid - pour opérer sur une ou plusieurs fenêtres d'un instance donnée d'un processus donnée, indépendamment de leur classe, leur titre
. ahk_exe - pour opérer sur une ou plusieurs fenêtres d'un processus donnée, indépendamment de leur classe, leur titre, leur PID
. ahk_class - pour opérer sur une ou plusieurs fenêtres appartenant à une classe donnée, indépendamment de leur processus, leur titre, leur PID
. ahk_id - pour identifier et opérer sur une fenêtre à l'exclusion de toute autre, indépendamment de sa classe, son processus, son PID, son titre
. le titre de la fenêtre
DeeJayOne
Posts: 3
Joined: 17 Sep 2018, 14:19

Re: WinAmp - Comment sélectionner la bonne Fenêtre ?

23 Sep 2018, 05:58

tomoe_uehara wrote:Pas vraiment répondre à votre question, mais peut-être que vous pouvez trouver quelque chose d'utile à partir de ce script
Merci pour le lien mais je crois que c'est un encore un peu trop costaud pour mon niveau actuel !
DeeJayOne
Posts: 3
Joined: 17 Sep 2018, 14:19

Re: WinAmp - Comment sélectionner la bonne Fenêtre ?  Topic is solved

23 Sep 2018, 10:51

C'est bon, j'ai résolu mon problème :
J'ai remplacé

Code: Select all

WinWaitActive
par

Code: Select all

WinWaitActive, ahk_pid %PID%,,,,

Return to “J'ai besoin d'aide”

Who is online

Users browsing this forum: No registered users and 2 guests