Показать сообщение отдельно
Старый 14.02.2010, 15:46   #223
Bersenev
Бывалый писикарщик
 
Аватар для Bersenev
 
Регистрация: 23.04.2009
Возраст: 53
Город: Ставрополь
Регион: 26
Машина: Opel Zafira 2007
Сообщений: 5,275
Bersenev has a brilliant futureBersenev has a brilliant futureBersenev has a brilliant futureBersenev has a brilliant futureBersenev has a brilliant futureBersenev has a brilliant futureBersenev has a brilliant futureBersenev has a brilliant futureBersenev has a brilliant futureBersenev has a brilliant futureBersenev has a brilliant future
По умолчанию

Пришло время описать процесс встраивания внешней программы в данный скин.

По умолчанию в РР программы встраиваются следующим образом:

В папке РР есть папка LAUNCH, в которой располагаются папки с описанием пути к программам и другими данными на которых я останавливаться не буду. Запускаем РР. Далее если в скине,который вы используете, прорисован экран LAUNCH.SKIN заходите туда и видите список описанных программ. Но установленные таким образом программы неимеют своих экранов и фактически никак не управляются РР.

Для того чтобы встроить программу поприличнее необходимо хоть немного освоить редактор скинов. А это не всем хочется делать, да многим это и ненужно, т.к. Центрифугу никто не отменял, а в ней есть возможность встраивания программ без изменения скина. ЭТО ОЧЕНЬ БОЛЬШОЙ НЕДОСТАТОК РР. Он рассчитан на неленивых, кому не лень копаться в скинах.

А так как лень родилась раньше меня, и мне надоело встраивать каждую программу отдельно было принято решение реализовать механизм встраивания программ как в Центрифуги (а наверно даже лучше).

"ЛУЧШЕ ДЕНЬ ПОТЕРЯТЬ, А ПОТОМ ЗА ПЯТЬ МИНУТ ДОЛЕТЕТЬ" (шедевр советской мультиприкации)

Хочу отметить, что всё описанное ниже не является стандартными возможностями РР, а реализованы внутри скина и в других скинах работать не будут. Поэтому если кто то захочет использовать их в своём скине, не ищите их описание в документации по РР, лучше спросите ( за спрос не бьют)

И так начнем.

Расмотрим как встроить программу на примере программы SAS.Планета.

Для начала запускаем РР. В ГЛАВНОМ МЕНЮ нажимаем кнопку настроек



Появиться экран настроек скина



Нажмём на УСТАНОВКУ ПРОГРАММ



В откравшемся экране выбираем кнопку, на которую хотим установить встраиваемую программу.



Во вновь открывшемя экране и будет происходить "таинство" встраивания программы.

Для начала нужно как-то обозвать нашу программу. Это название в дальнейшем будет высвечитаться на всех кнопках в скине и использовано для создания файла скина ИМЯ.skin. Для этого нажимаем на кнопку слева от ИМЯ ПРОГРАММЫ и в открывшемся экране вводим имя



Далее необходимо задать как РР должен определить каким окном ему управлять. Для этого задаём параметр ИМЯ ОКНА ПРОГРАММЫ. В нём указывается заголовок или часть заголовка окна программы, допустим для перехвата окна в котором меняется заголовок, но присутстует постоянная часть можно указать именно эту часть(в любом регистре, но лучше так как в заголовке окна), допустим Internet Explorer. В нашем варианте, если указать SAS.Планета перехват происходит, но окно программы постоянно мерцает, поэтому используем второй вариант, указывает класс окна программы, для SAS.Планета это !TFmain. Чтобы узнать клас окна воспользуйтесь AutoIt3 Window Spy из комплекта AutoIt или AutoHotKey. При таком варианте окно этой программы перехватывается корректно. Выбирайте для себя более подходящий способ сами.

Следующим этапом надо определить путь к программе, что бы РР знал что нужно запускать.(Я думаю на этом не стоит останавливаться)



Следующим обязательным этапом необходимо выбрать ШАБЛОН для создания файла скина. Для этого нажимаем кнопку слева от окна СКИН.
В открывшемся экране подбирает нужный шаблон.



Здесь можно определить и свой шаблон, для этого нажать на кнопку в левом нижнем углу и ввести имя скина без расширения, допустим у вас есть скин MySkin.skin тогда вы вводите MySkin

Осталось задать иконку для нашей программы, нажав кнопку ИКОНКА выбираем нужную иконку. Иконки находяться в папке скина MenuIcons

Теперь можно сохранять наши настройки нажав СОХРАНИТЬ.

Всё программой можно пользоваться. Все остальные настройки необязательны они только дают дополнительные возможности. Для большенства программ этих настроек достаточно.

Далее рассмотрим эти возможности.

Есть программы, которые должны запускаться с определёнными параметрами в комадной строке, эти парметры указываются в ПАРАМЕТРЫ КОМАДНОЙ СТРОКИ

Есть программы, которые при перехвате окна РР ведут себя неадекватно или зависают. Для того чтобы этого избежать нажмите кнопку ЗАХВАТ чтобы появился параметр НЕТ. Тогда при запуске программы РР не будет перехватывать окно программы и зависаний не будет.
Но хорошо если программа сохраняет свою позицию на экране и запоминает свой размер, а если нет.

Для этого случая предусмотрена возможность запуска скрипта для управления программой, т.к. скрипт может быть с параметрами, то следовательно и параметров к нему. Скрипт должен сам следить за тем когда ему стоит закрыться. Скрипт должен быть скомпелирован в exe иначе РР их не запускает. Этот вариант позволяет встроить что угодно и куда угодно, всё зависит только от вашего мастерства. Скрипт можно использовать и в режиме с захватом.

Теперь о управляющих кнопках.

Для каждой встраиваемой программы можно определить 12 кнопок тремя вариантами.

1. Отправив приложению горячию клавишу
2. Отправив программе внутреннюю команду
3. Запустив скрипт, выполняющей определёное действие с программой.

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

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

Теперь о режиме НАЛОЖЕНИЯ.

Режим НАЛОЖЕНИЯ предусмотрен для того чтобы была возможность на небольших мониторах запускать программы на весь экран. Если включен данный режим, то в окне программы сверху появиться полупрозрачная кнопка со стрелкой.



Если на неё нажать, то поверх окна программы появиться полупрозрачное меню, позволяющее управлять плеером, громкостью, переходить к другим экранам, закрыть программу, а также отправить программе любую из 12 заданных клавиш. Данная функция реализована через ElcosMenu, а в нем к сожалению нельзя использовать динамические изображения, поэтому кнопки только под номерами.
Нажав на стрелку вверху меню оно будет закрыто.

Наложение можно использовать не только в полном экране.

Все изменения необходимо сохранять

Вот наверно и всё о встраивание. Если что забыл то в дальнейшем дополним, спрашивайте.

Удачи в этом непростом процессе ВСТРАИВАНИЯ ПРОГРАММ
Bersenev вне форума   Ответить с цитированием