2010-06-16 4 views
1

У меня есть приложение, в котором панель задач мигает, если произошло событие. Это прекрасно работает, и было относительно легко реализовать с помощью Win32 API, описанный ниже: http://blogs.x2line.com/al/archive/2008/04/19/3392.aspxСбросить панель задач Flash в C#

Однако, когда я остановить мигание, иногда приложение застрял в «выделенном» состоянии в панели задач. Это только сбрасывается, нажимая на приложение на панели задач, сводя к минимуму его, а затем повторно увеличивая его. Есть ли способ очистить это от подсветки без какого-либо взаимодействия с пользователем?

ответ

0

Возможно, вместо того, чтобы мигать, вы можете нанести на него значок наложения - одну строку кода из C# с пакетом кода. Затем, когда вы хотите очистить его, вы можете снять значок наложения - снова одну строку кода. Однако только для Windows 7.

0

Можете ли вы опубликовать код, который вы используете, чтобы «Остановить» мигание?

Вы также рассматривали использование другого флага, таких как:

// мигают, пока окно не выходит на передний план FLASHW_TIMERNOFG = 12;

Вам все равно нужно нажать на приложение, чтобы остановить вспышку, но вам не нужно сводить к минимуму, а затем повторно увеличивать приложение, чтобы остановить вспышку.

0

Вы можете включить FlashTaskbar фрагмент и использовать следующий код

FlashWindow(Form.Handle, FlashMode.FLASHW_STOP)