Ru-Board.club
← Вернуться в раздел «Программы»

» Autoplay Media Studio

Автор: lorents
Дата сообщения: 31.08.2010 14:13
Arvigen777
смотри функцию Project\Dependencies, это самый простой способ.
Если надо, могу объяснить как через свое окно сделать.
Автор: Arvigen777
Дата сообщения: 31.08.2010 14:15
tavria2

Цитата:
См. действия: Window.Maximize и Application.Restore.

Попробовал пример с форума:


Код: if not FullScreen then
FullScreen = true;
Window.Maximize(Application.GetWndHandle());
end
Автор: tavria2
Дата сообщения: 31.08.2010 17:13
Arvigen777

Цитата:
да , страница разворачивается , но когда я перехожу на другую страницу, она тоже в развернутом виде

Ну так, восстанвливай окно на "другой" странице с помощью Application.Restore.
Автор: lorents
Дата сообщения: 31.08.2010 17:37
Arvigen777
а ты смотрел функцию Project\Dependencies?

Ладно пойдем по сложному пути, найдешь файл
C:\Program Files\AutoPlay Media Studio 8\Plugins\Detect\Acrobat.det
Acrobat.det - это zip-архив, вытаскиваешь файл acrobat.lua и кидаешь в папку AutoPlay\Scripts.
в Global Functions прописываешь:

Код: Application.LoadScript("AutoPlay\\Scripts\\acrobat.lua");
Автор: Arvigen777
Дата сообщения: 31.08.2010 17:39
tavria2
Использую


Код: Application.Restore();
Автор: lorents
Дата сообщения: 31.08.2010 18:42
Arvigen777
исправил, смотри выше.
Автор: Arvigen777
Дата сообщения: 31.08.2010 19:00
lorents
Спасибо , все получилось , как всегда меня выручаешь .

Добавлено:
Подскажите, как обратиться к диалогу ? какой код для этого нужен....
Автор: tavria2
Дата сообщения: 31.08.2010 21:41
Arvigen777

Цитата:
но все работает только 1 раз, с page1 на page2 ( page2 в полный экран ), далее с page2 на page1 ( page1 фиксированного размера ) , но когда я снова перехожу на page2 окно не в полном размере, а фиксированное


Полноэкранный режим:
Код: if not FullScreen then
FullScreen = true;
Window.Maximize(Application.GetWndHandle());
end
Автор: lorents
Дата сообщения: 31.08.2010 21:47
Arvigen777

Цитата:
Подскажите, как обратиться к диалогу ? какой код для этого нужен....

смотри Dialog и DialogEX. Мой тебе совет, читай справку. Собственный опыт.
Автор: Arvigen777
Дата сообщения: 01.09.2010 23:10
tavria2
Большое спасибо

Цитата:
нужно кроме копирования еще и анализировать его работу

это я учту

PS Всем большое спасибо, за то что помогаете, действительно очень хороший форум. Если бы не вы, знакомство с прогой закончилось после первого запуска AMS .
Автор: Zloy_Gelud
Дата сообщения: 02.09.2010 13:59
Пример, показывающий возможность добавления в качестве ImageList'a объекта Tree иконок/значков файлов (или из файлов). По сути с объектом Tree еще можно позаморачиваться в результате чего может получиться UDF'ka с расширенными возможностями по работе с этим объектом..
GUI.apz ~138,5 КВ

Добавлено:
Плагин Memory is needed!
Автор: Robby
Дата сообщения: 02.09.2010 19:37
Наверняка, каждый пользователь интернета сталкивался с задачей разборки скачанных файлов. Есть необходимость автоматизировать это трудоемкий процесс. Я набросал проект по сортировке файлов. Скачать можно здесь Ссылка 2.6 МБ. Пока это еще проектик. Но 50% процентов функционала уже есть.
Что обычно у нас в папке Downloads или аналогичной? Скачанные файлы, которые могут быть исполняемыми или другими типами файлов (текстовые, архивы и т.д.) а также логи качалок. Упрощенно задача выглядит так: из исходной папки скопировать или переместить файлы в заданную папку, создав в последней подпапку равную имени обрабатываемого файла. В созданную папку поместить файл, а также лог качалки для этого файла.
Что должен уметь сортировщик:

1. копировать/перемещать файлы раскладывая все по отдельным папкам;
2. если это архивы, то распаковывать их;
3. уметь работать с запароленными архивами (перебор паролей по списку);
4. переименовать логи в файлы описания;
5 .очистить описания от различного мусора (используется внешняя утилита TextPipe);
6. переименовать папки взяв информацию из файла описания (внешняя утилита или встроенными средствами);
возможно, что-то еще...

Первые три пункта реализованы и работают. Если есть желающие помочь или поучаствовать в создании данного проекта то с идеями или предложениями в ПМ.

Zloy_Gelud не отказался бы от твоей помощи, ты здорово освоил прогу.
Автор: Kindly
Дата сообщения: 02.09.2010 20:10
Robby, а что, тот же Download Master и логесы хранить может, и определять файлы по расширению, и при закачке выводить запросы и т.д. и т.п. У меня в папке Downloads, такие папки: Games, Music, Video, Programs, Other - в каждую из них при закачке сохраняется соответствующий файл. Зачем писать для этого прогу, если изначально можно внимательно все делать?
Автор: Robby
Дата сообщения: 02.09.2010 20:53
Kindly
Download Master конечно кое-что может, но опять же файлы он сохраняет по группам, он же не создает для каждой закачки свою папку а все файлы групы будут просто находиться в одной папке напр. Music , он не распаковывает архивы. Его логика распределения файлов по группам не всегда приводит к ожидаеммоу результату. Опять же Download Master может быть не единственной качалкой, могут быть и другие качалки, файлы просто скачаны браузером и т.п. Зачем писать для этого прогу? Мне кажется что такой функционал был бы удобен и это вполне не так и сложно реализовывается. Смысл же в том чтобы компьютер делал большую часть работы а не руки.
Автор: a59rn
Дата сообщения: 04.09.2010 11:22
Парни помогите! Не могу вьехать почему не воспроизводится gif картинка, вставляю в проэкт через new image object? и вообще воспроизводит ли их AMS?
Автор: tavria2
Дата сообщения: 04.09.2010 11:40
a59rn

Цитата:
Не могу вьехать почему не воспроизводится gif картинка, вставляю в проэкт через new image object? и вообще воспроизводит ли их AMS?

Только через плагин Gif.
Автор: a59rn
Дата сообщения: 04.09.2010 11:42
спасибо конечно, но я не понял как это сделать, можешь поподробнее рассказать, а то перечитал кучу страниц этого форума а темы такой найти не могу.
Автор: tavria2
Дата сообщения: 04.09.2010 12:04
a59rn
Установи плагин Gif.
Автор: a59rn
Дата сообщения: 04.09.2010 12:14
скачал с ОФ сайта установил так как там написано, скопировал папку GIF в папку Плагин/Объект, перезапустил программу но изменений не замечаю

Добавлено:
в чем может быть проблемма с этим Gif плагином? там еще в архиве папка Examples есть, ее надо куда-то копировать?

Добавлено:
Разобрался.
Проблема была в том что версия стояла RUS переставил не ENG и все плагины стали отображаться где надо.
Теперь другой вопрос, как через этот плагин вставить гиф? что в свойствах Гифа или еще где надо прописать?

Добавлено:
Разобрался и тут не дождавшись помощи.
Сам с собой короче поговорил тут на форуме)))
Прописал следущее в OnLoad страницы, затем попробовал давать это значения кнопкам на вкладку OnEnter... все вроде ничего, да вот только тормозит GIF страшно, и имеет лишь одну функцию - GIF.Load.
Или я дурак или Plugin никакой!
Не смог я разобраться с тем, как воспроизводить GIF не циклично а один раз.

result = GIF.Load("Plugin1", "AutoPlay\\Images\\kartinka.gif");

Это ФсЁ что осилил мой деревянный мозг за сегодня)))

Добавлено:
Парни, а кто знает как объекту Flash придать прозрачность фона, в браузере через "wmode = transparent"
а тут как добиться такого же эффекта?
Кпримеру нарисовал я анимированный круг а внутри круга серый фон, который поставил во Flash фоном при создании, так вот этот фон нужно сделать прозрачным.
Если кто то знает подскажите пожалуйста.
Автор: lorents
Дата сообщения: 05.09.2010 11:26
a59rn
если не ошибаюсь сделать прозрачным фон flash никак. Но можно через маску.
если ты сам задаешь маску когда тебе надо, т о вот код

Код: hWnd = Flash.GetProperties("Flash1").WindowHandle;
Window.SetMask(hWnd, "AutoPlay\\Images\\630_17.png", true, 0);
Автор: Robby
Дата сообщения: 05.09.2010 12:06
Подскажите как можно решить следующую проблему. Нужно из файлов формата name.ext и name.ext.ext получить только имя файла. Обработка идет в цикле перебором из массива. Имя файла может содержать точки, а расширение может быть как 3 знаковое так и 4. Самый простой способ использловать String.SplitPath (Path).Filename
в первом случае из name.ext получим name а во втором - из name.ext.ext получим name.ext. Проверить есть ли расширение и если есть - применить String.SplitPath (Path).Filename еще раз для извлечения имени. Но все это сработает если в имени нет точек. А вот если есть точки то такой алгоритм не сработает. В голову приходят только варианты с несколькими громоздкимим проверками. Может кто подскажет? Можно либо логику обработки или готовый код.

Автор: tavria2
Дата сообщения: 05.09.2010 12:43
Robby
Попробуй через регулярные выражения:
Код: sName = "C:\\MyFolder\\name.ext.ext.ext"
sName = String.SplitPath(sName).Filename;
sName = string.gsub (sName, "(.-)(%..*)", "%1");
Автор: Robby
Дата сообщения: 05.09.2010 13:02
tavria2
а регулярные выражения это из восьмой версии? В седьмой такого нет. А восьмая у меня что-то не работает выдает при запуске что память не может быть read и закрывается.
Автор: Zloy_Gelud
Дата сообщения: 05.09.2010 14:40
Robby

Цитата:
а регулярные выражения это из восьмой версии?

Регулярные выражения можно применять к любой версии, используя оригинальный синтаксис LUA, разница только в том, что более старые версии АМС используют соответственно более старые версии движка (LUA), которые не поддерживают некоторые действия.
Попробуй такой код:

Код:
function GetFileName(sPath)
local sFilename = String.SplitPath(sPath).Filename..String.SplitPath(sPath).Extension;
local sExt = String.SplitPath(sPath).Extension;
if sExt ~= "" then
while String.ReverseFind(sFilename, sExt, false) ~= -1 do
sFilename = String.Mid(sFilename, 1, String.Length(sFilename) - String.Length(sExt));
end
end
return sFilename;
end

Dialog.Message("Notice", GetFileName("C:\\MyFolder\\name.ext.ext.ext"), MB_OK, MB_ICONINFORMATION, MB_DEFBUTTON1);
Автор: tavria2
Дата сообщения: 05.09.2010 14:42
Robby

Цитата:
а регулярные выражения это из восьмой версии?

Регулярные выражения в AMS не документированы, нужно смотреть справку по Lua 5.0 для AMS ниже 8-й версии или Lua 5.1 для 8-й версии.
Теоретически вышеуказанный код должен работать и в 7-й и в 8-й версии AMS.
Попробуй еще такой вариант:
Код: sName = "C:\\MyFolder\\name.ext.ext.ext"
sName = String.SplitPath(sName).Filename;
sName = string.gsub (sName, "%..*", "");
Автор: Sanchos145
Дата сообщения: 05.09.2010 18:10
Ок, тогда так, перед запуском программа проверяет разрешение екрана, если разрешение не равно 1024-768 то вылетает следующий диалог : Разрешение вашего монитора не пригодно для запуска программы, измените его на 1024-768 и перезапустите программу. -- в окне только одна кнопка "Ок" после чего окно закрывается и вылетает следующее: Сейчас произойдет выход из программы, если вы желаете ею воспользоваться установите разрешение 1024-768 сделать ето можно так то так то ... И внизу тоже кнопочка "Ок" .

Я просто начинающий прог, учусь на втором курсе, да и кстати у меня АMS 7.5 перевод русский с кракозябрами. Делаю интерактивную обучающую программу.
Автор: Robby
Дата сообщения: 06.09.2010 09:49
Zloy_Gelud
tavria2
коды работают но результат дают не тот что надо.
[more=Читать дальше результаты работы..]

Код: sName = "C:\\MyFolder\\name.ext.ext.ext"
sName = String.SplitPath(sName).Filename;
sName = string.gsub (sName, "%..*", "");
Автор: tavria2
Дата сообщения: 06.09.2010 10:22
Robby

Цитата:
Смысл в том чтобы отсечь расширение и двойное расширение но оставить всю часть имени целой.

Не понятно, по каким признакам ты собираешся различать, чему принадлежит точка, к имени или расширению?

Цитата:
Я правильно понял, что % используетя для экранировки чтобы найти спецсимвол, например точку?

Да.

Цитата:
А весь синтаксис должен быть Perl?

Нет, у луа свой синтаксис.
Автор: Robby
Дата сообщения: 06.09.2010 10:44
tavria2
да точки в именах файлов это зло
если так: (%.???)|(%.????)%.???$
Lua такой синтаксис поддерживает?
Автор: tavria2
Дата сообщения: 06.09.2010 10:51
Robby

Цитата:
Lua такой синтаксис поддерживает?

Нет.
[more=Шаблоны]Символьный Класс:
Символьный класс используется, чтобы представить набор символов. Следующие комбинации используются для описания символьного класса:

•x: (где x - соответствует сам себе. (Он не может быть равен ни одному из волшебных символов ^$()%.[]*+-?).
•.: (точка) соответствует любому символу.
•%a: соответствует любой букве.
•%c: соответствует любому управляющему символу.
•%d: соответствует любой цифре.
•%l: соответствует любой букве в нижнем регистре.
•%p: соответствует любому символу пунктуации.
•%s: соответствует любому пробельному символу.
•%u: соответствует любой букве в верхнем регистре.
•%w: соответствует любому алфавитно-цифровые символу.
•%x: соответствует любой шестнадцатеричной цифре.
•%z: соответствует символу с представлением 0.
•%x: (где x - любой не алфавитно-цифровой символ), соответствует сам себе. Это - стандартный способ экранировки волшебных символов. Лучше следить за тем, чтобы любому символу пунктуации (даже не "волшебному") предшествовал '%', когда этот символ применен в шаблоне.
•[set]: соответствует любому символу из набора, заданного в set. Диапазон символов может быть определен, с помощью символа '-' отделяющего начало и конец диапазона. Все символьные классы %x описанные выше, могут использоваться как компоненты в наборе. Все другие символы в наборе представляются как есть. Например, [%w_] (или [_%w]) соответствует любому алфавитно-цифровому символу или символу подчеркивания, [0-9] соответствует любой десятичной цифре, и [0-9%l%-] соответствует любой десятичной цифре или любой букве в нижнем регистре или символу дефиса '-'.
Взаимодействие между диапазонами и классами не определено. Поэтому, наборы подобные [%a-z] или [a-%%] не имеют никакого значения.

•[^set]: Отрицательный набор символов. Соответствует любому символу, кроме тех, что заданы в наборе set. Содержимое набора интерпретируется аналогично описанному выше [set].
Для всех классов, представляемых одиночными символами (%a, %c, и т.п.), соответствующая прописная буква представляет отрицание класса. Например, %S представляет все НЕ пробельные символы.

Представления символа, пробела и других символьных групп зависят от текущих региональных установок. В частности, класс [a-z] не эквивалентен %l.

Элемент шаблона:
Элементом шаблона может быть

•Одиночный символьный класс, который соответствует любому одиночному символу из заданного класса;
•Одиночный символьный класс, сопровождаемый '*', что соответствует 0 или большему количеству повторений символов из заданного класса. Эти элементы повторения будут всегда соответствовать самой длинной возможной последовательности.
•Одиночный символьный класс, сопровождаемый '+', что соответствует 1 или большему количеству повторений символов из заданного класса. Эти элементы повторения будут всегда соответствовать самой длинной возможной последовательности.
•Одиночный символьный класс, сопровождаемый '-', что также соответствует 0 или большему количеству повторений символов из заданного класса. В отличие от *, элементы повторения будут всегда соответствовать самой короткой возможной последовательности;
•Одиночный символьный класс, сопровождаемый '?', что соответствует 0 или единственному вхождению символа из заданного класса;
•%n, при n от 1 до 9; такой элемент равняется n-й зафиксированной подстроке (см. ниже);
•%bxy, здесь x и y - два различных символа. Такой элемент соответствует строкам, которые начинаются с x, заканчиваются на y, и в них сбалансированы x и y. Это означает, что, если читать строку слева направо, подсчитывая +1 для x и -1 для y, то последний y является первым y, для которого счетчик равен 0. Например, элемент %b() соответствует выражениям со сбалансированными круглыми скобками.
Шаблон:
Шаблон представляет собой последовательность описанных выше элементов. Символ '^' в начале шаблона, говорит о том, что заданная последовательность начинается с начала строки. Символ '$' в конце шаблона, говорит о том, что заданной последовательностью строка заканчивается. Символы '^' и '$', размещенные в других местах шаблона, не имеют никакого специального значения и представляются как есть.

Подшаблоны:
В шаблон можно включить подшаблоны, выделив их круглыми скобками. Если найденная строка соответствует шаблону, то ее подстроки, соответствующие подшаблонам, будут доступны для будущего использования. Подшаблоны пронумерованы согласно их левым круглым скобкам. Например, в шаблоне "(a*(.)%w(%s*))", часть строки, соответствующая "a*(.)%w(%s*)" будет зафиксирована как первый подшаблон (и поэтому имеет номер 1); любые символы попавшие под соответствие "." будут зафиксированы как подшаблон номер 2, и часть строки, соответствующая "%s*" получит номер 3.

Специальный вариант использования подшаблонов - получение текущей позиции в строке. Для этого используются пустые подшаблоны (). Например, если мы применим шаблон "()aa()" к строке "flaaap", то получим два результата: 3 и 5.

Шаблон не может содержать вложенные ноли. Используйте %z вместо этого. [/more]

Страницы: 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140

Предыдущая тема: Media Player Classic - Home Cinema (MPC-HC)


Форум Ru-Board.club — поднят 15-09-2016 числа. Цель - сохранить наследие старого Ru-Board, истории становления российского интернета. Сделано для людей.