1

Тема: AHK: Мигание ярлычка программы на панели задач по списку

Доброго времени суток.


Подскажите - как поменять этот код, чтобы мигали только те окна - у которых в названии окна присутствует слово из файла список.txt, лежащем рядом с файлом ?

Например:
Блокнот
Калькулятор
Paint



#SingleInstance Force
#Persistent
#NoEnv

text := ""
WinGet, id, list,,, Program Manager
Loop % id
{
	this_id := id%A_Index%
	WinGetClass, this_class, ahk_id %this_id%
	WinGet, pid, PID, ahk_id %this_id%
	text .= this_class "`n" pid "`n" this_id "`n`n"
	FlashTaskBarButton(this_id)
}
msgbox % text
Return

FlashTaskBarButton(hGui, count := 0)  {
   static FLASHW_TRAY := 0x2, FLASHW_TIMERNOFG := 0xC
   VarSetCapacity(FLASHWINFO, size := A_PtrSize*2 + 4*4, 0)
   NumPut(count, NumPut(FLASHW_TRAY|(count ? 0 : FLASHW_TIMERNOFG), NumPut(hGui, NumPut(size, FLASHWINFO)), "UInt"))
   DllCall("FlashWindowEx", Ptr, &FLASHWINFO)
}

2

Re: AHK: Мигание ярлычка программы на панели задач по списку

clown124 пишет:

как поменять этот код

А зачем именно менять этот код? Напишите новый, просто используя функцию FlashTaskBarButton(). По вашему вопросу не ясно, какие именно трудности вам встретились. Не знаете, как данные из файла прочитать, или что?

Разработка AHK-скриптов:
e-mail dfiveg@mail.ru
Skype dmitry_fiveg

3

Re: AHK: Мигание ярлычка программы на панели задач по списку

Ну он же работает вроде бы как.
Нужно только чтобы мигали только конкретные окна (а не все).

4

Re: AHK: Мигание ярлычка программы на панели задач по списку

Вам из всего, что там работает, нужна только функция.

Разработка AHK-скриптов:
e-mail dfiveg@mail.ru
Skype dmitry_fiveg

5

Re: AHK: Мигание ярлычка программы на панели задач по списку

Ясно.
А как к ней список окон добавить ?

6

Re: AHK: Мигание ярлычка программы на панели задач по списку

Смотря, в каком виде список.

Разработка AHK-скриптов:
e-mail dfiveg@mail.ru
Skype dmitry_fiveg

7

Re: AHK: Мигание ярлычка программы на панели задач по списку

Список в txt - состоит всего из трех строчек:

Блокнот
Калькулятор
Paint

8

Re: AHK: Мигание ярлычка программы на панели задач по списку

Нужно распарсить список (цикл Loop, parse), в цикле получить ID каждого окна, в названии которого есть текущая строка (SetTitleMatchMode, WinGet), для каждого ID вызвать функцию.

Разработка AHK-скриптов:
e-mail dfiveg@mail.ru
Skype dmitry_fiveg

9

Re: AHK: Мигание ярлычка программы на панели задач по списку

Каким кодом распарсивается список окон для получения их ID ?

10

Re: AHK: Мигание ярлычка программы на панели задач по списку

Вся нужная информация есть в предыдущем посте, читайте справку по указанным командам. Если не хотите разбираться сами, у нас есть коммерческий раздел.

Разработка AHK-скриптов:
e-mail dfiveg@mail.ru
Skype dmitry_fiveg