Алексей, спасибо, см. личку.
Алексей, спасибо, см. личку.
Честно говоря, ожидал там увидеть скриншот именно с компа из машинки - чтобы понять куда лучше размещать индикатор... Ладно, эт мелочи, потом сам подредактируешь позицию на экранеСообщение от Parador
Правда, в ближайшие пару дней со временем ожидается напряг... За выходные уж точно должно найтись время
Кста, личка у тебя переполнена, поэтому пришлось сюда написать.
С уважением, Алексей
Мой Prius NHW11
Спасибо! Буду ждать. ЛицоСообщение от ashu
почистил.
ЗЫ. Мне было бы удобно по правому борту между средней и верхней кнопками.![]()
Последний раз редактировалось Parador; 28.11.2008 в 00:35.
Ну, что-то, вроде, получилосьСообщение от Parador
Делал под 800x480. Если чего не так - сорцы открытыМожно, например, недостающий функционал перетащить из моего avc_control.ahk.
В общем, ниже представлен обрезанный вариант моего скрипта avc_control.ahk для Parador'а и других, кто в силу обстоятельств не пользуется RoadRunner'ом.![]()
Скрипт умеет только:
1. В только что запущенный СитиГид посылать "5" - включение GPS.
2. Показывать поверх окна СитиГида "возраст" пробочного файла. Окно СитиГида при этом должно быть активным.
cityguide-is.ahk:
Код:#NoTrayIcon ; не отображать значок скрипта в трее #SingleInstance force ; перезагрузить скрипт, если он уже запущен #NoEnv ; запрещаем имена переменных как у переменных окружения SendMode Input ; ускорренный ввод #Persistent ; держать скрипт запущенным SetTitleMatchMode 2 ; 2 - заголовок окна должен содержать значение, заданное в параметре ; ----------- редактируемые переменные - настройки ------------ cityguide := "City Guide" ; название окна CityGuide myjamfile := "C:\Program Files\City Guide\78SPb.jam" ; за каким файлом пробок следим (боевой) ;myjamfile := "C:\CityGuide\City Guide 2.2\78SPb.jam" ; за каким файлом пробок следим (тестовый) jamgreen := 8 ; до скольки минут считать возраст пробок зеленым jamred := 40 ; до скольки минут считать возраст пробок красным empty := "НЕТ" ; что пишем на экране, если пробочный файл очень старый xPosition := 670 ; x-позиция на экране yPosition := 105 ; y-позиция на экране ; -------- конец редактируемых переменных - настроек ---------- CityGuideActive := 0 Custom1Color := "600305" Custom2Color := "036005" MyTextEmpty := "" gui, color, 000000 gui, font, s48 bold, Arial Gui, Add, Text, c%Custom1Color% x200 y200 w130 h70 vMyRed, %MyText3% Gui, Add, Text, c%Custom2Color% x0 y0 w130 h70 vMyGreen, %MyText1% Gui, +LastFound +AlwaysOnTop WinSet, TransColor, 000000 200 Gui, -Caption Gui, Show, x%xPosition% y%yPosition% w130 h70 NoActivate, CGJAM JamShow := 1 SetTimer, ShowHideJam ; отслеживать показ на экране только в окне СитиГида SetTimer, SwitchText, 10000 ; проверять файл пробок каждые 10 секунд return GuiSize: If (Errorlevel = 1) Gui, Restore ; противодействуем минимизации окна ShowHideJam: Act := 0 IfWinActive, %cityguide% { Act := 1 } Else { IfWinActive, CGJAM { Act := 1 } } If (Act = 1) { If (JamShow <> 1) { WinShow, CGJAM JamShow := 1 } } Else { If (JamShow = 1) { WinHide, CGJAM JamShow = 0 } } If CityGuideActive = 0 { IfWinExist, %cityguide% { ; CityGuide не был запущен, а сейчас найден в списке окон WinActivate Send, 5 ; включить GPS CityGuideActive := 1 } } Else { IfWinNotExist, %cityguide% { CityGuideActive := 0 } } return SwitchText: ; Получаем время файла пробок FileGetTime, OutputVar, %myjamfile% mhour := Substr(OutputVar, 9, 2) mmin := Substr(OutputVar, 11, 2) ; Собираем текущую отметку времени (в минутах) currconntimestamp := A_Min + A_Hour*60 lastjamtimestamp := mmin + mhour*60 If (currconntimestamp + 5 < lastjamtimestamp) currconntimestamp := currconntimestamp + 24*60 ; Получаем возраст файла пробок jamtime := currconntimestamp - lastjamtimestamp If (jamtime > 9) { jamtime := " " . jamtime } Else { jamtime := " " . jamtime } jamexpired := 0 If (currconntimestamp > lastjamtimestamp + jamgreen) jamexpired := 1 If (currconntimestamp > lastjamtimestamp + jamred) jamtime := empty ; тут надо нарисовать цветом возраст пробочного файла If (jamexpired = 0) { ; Делаем зеленым GuiControl, Move, MyRed, x200 y200 ; сдвигать надо, чтобы красный текст не исчезал при показе GuiControl, Text, MyRed, %MyTextEmpty% GuiControl, Text, MyGreen, %jamtime% GuiControl, Move, MyGreen, x0 y0 } Else { ; Делаем красным GuiControl, Move, MyGreen, x200 y200 ; сдвигать надо, чтобы красный текст не исчезал при показе GuiControl, Text, MyGreen, %MyTextEmpty% GuiControl, Text, MyRed, %jamtime% GuiControl, Move, MyRed, x0 y0 } return
Последний раз редактировалось ashu; 30.11.2008 в 00:13.
С уважением, Алексей
Мой Prius NHW11
Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)