2010-07-15 1 views
8

Есть ли способ сделать мое окно приложения Python консольным приложением на панели задач Windows, чтобы привлечь внимание пользователя?Есть ли способ сделать приложение-приложение Python на панели задач в Windows?

Мой скрипт будет работать исключительно в относительно однородной среде Windows, поэтому мне не нужно определять, присутствует ли какой-либо конкретный API, или является ли решение кросс-платформенным или нет (конечно, кросс-платформа лучше для будущей справки ... но мне это не нужно для этого приложения).

ответ

6

Мигает панель задач в Windows выполняется с использованием функции API FlashWindowEx (Python API help).

Я не пробовал это сам, но это должно быть возможно вызвать эту функцию из Python, используя PyWin32 (Python для расширений Windows,), которые могут либо устанавливать вручную или путем установки ActivePython.

+0

Это отлично поработало для меня, спасибо! Я знаю, что проблескивание панели задач часто считается плохим дизайном, но мое конкретное приложение строго предназначено для использования на работе, и мои коллеги, которые его будут использовать, хотят быть немедленно предупреждены, когда мое приложение закончит сбрасывать свои данные. –

1
+0

Или, возможно, http://docs.activestate.com/activepython/2.4/pywin32/win32gui__FlashWindowEx_meth.html должны это сделать. –

+0

Пробовал. Не уверен, какие параметры должны пройти, но это, похоже, не имеет никакого эффекта. – obesechicken13

3

Это самое простое решение, которое я мог придумать:

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