Sto mappando eventi provenienti da un sensore esterno (ad esempio una tastiera) a shorcuts da tastiera e vorrei passare da un'applicazione alla finestra di sovrapposizione dell'interruttore veloce (ad esempio "Alt-Tab menu"), ma Voglio continuare a mostrare il menu dell'interruttore finché non viene selezionata un'applicazione.Overlay Alt Tab Identificatore Win32
In sostanza, quello che sto facendo è questo:
if(notInSwitchMenu)
{ // Alt-Tab keystroke, but Alt remains pressed : the menu is still visible
Press(VK_MENU);
Press(VK_TAB);
Release(VK_TAB);
}
else
{
if(event1) //Tab keystroke : next app
{
Press(VK_TAB);
Release(VK_TAB) ;
}
else if(event2) //Shift-Tab keystroke : previous app
{
Press(VK_SHIFT);
Press(VK_TAB);
Release(VK_TAB);
Release(VK_SHIFT)
}
else if(event3) // we get out of the menu : the selected app has the focus.
{
Release(VK_MENU);
}
}
La stampa e stampa chiama semplicemente SendInput con le giuste proprietà.
Il mio problema è che non conosco un metodo affidabile per determinare se l'utente è attualmente nell'elenco dei programmi Alt-Tab. Qualcuno sa come identificare il menu di sovrapposizione Alt-Tab con l'API Win32?
Sai, che usare 'Ctrl + Alt + Tab' una volta forzerà l'elenco a rimanere aperto finché non sceglierai un'applicazione? –
Gli eventi 'EVENT_SYSTEM_SWITCHSTART' /' EVENT_SYSTEM_SWITCHEND' ti dicono quando appare la finestra 'Alt' +' Tab' e scompare. –
@Raymond Chen risponde come risposta. –