2010-07-15 13 views
8

C'è un modo per far lampeggiare la finestra dell'applicazione della mia console Python nella barra delle applicazioni di Windows, per attirare l'attenzione dell'utente?C'è un modo per far lampeggiare un'applicazione della console Python nella barra delle applicazioni di Windows?

Il mio script verrà eseguito esclusivamente in un ambiente Windows relativamente omogeneo, quindi non mi interessa sapere se una determinata API è presente o se una soluzione è multipiattaforma o meno (ovviamente, cross-platform è meglio per riferimento futuro ... ma non ne ho bisogno per questa applicazione).

risposta

6

lampeggiante nella barra delle applicazioni di Windows viene eseguita utilizzando la funzione FlashWindowEx API (Python API help).

Non ho provato io stesso, ma dovrebbe essere possibile chiamare questa funzione da Python utilizzando PyWin32 (Python per le estensioni di Windows) che possono sia da installato manualmente o con l'installazione di ActivePython.

+0

Questo ha funzionato alla grande per me, grazie! So che il flashing della barra delle applicazioni è spesso considerato un cattivo design, ma la mia particolare applicazione è strettamente per l'uso sul lavoro e i miei colleghi che lo utilizzeranno desiderano essere avvisati immediatamente quando la mia app ha terminato di estrarre i dati. –

3

Questa è la soluzione più semplice che potrei venire con:

import ctypes 
ctypes.windll.user32.FlashWindow(ctypes.windll.kernel32.GetConsoleWindow(), True) 
Problemi correlati