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

» Autoplay Media Studio

Автор: Volgar
Дата сообщения: 11.11.2007 22:50
Вообще интересуют такие возможности (полный список желаний):

1. Возможность вставлять анимированный GIF (флеш, вижу можно вставить, но конвертить ГИФ во флэш не подходит из-за значительного увеличения объема файла).
2. Плавные, полупрозрачные, красивые переходы между страницами.
3. Сохранять данные пользователя в INI-файле с возможностью вызова.
4. Возможность компиляции проекта в джава-приложение (мидлет).
5. Возможность сворачивания готовой программы в трей и запуска через заданный промежуток времени.
6. Защита от копирования готовых программ: привязка к компьютеру, пароль на запуск и т. п.
Автор: ZatarNew
Дата сообщения: 12.11.2007 11:57
всем привет, перерыл почти всю ветку, но так и не понял как сделать приложение действительно полноэкранным, смотрел пример от GOOSE , но в нем кнопки остаються прежнего размера, и вообще меняеться расположение обьектов на экране. может кто подскажет есть ли возможность просто менять масштаб обьектов в зависимости от размера окна? у меня на странице несколько изображений , текстовый параграф и пять кнопок. в семерке есть auto-resize но работает он как то странно.

и еще не могу решить вопрос со слайд шоу - мне нужно чтобы при нажатии на кнопку открывалось слайд шоу из определенной папки, и к каждой фотографии подписывалось название, на основе встроенного в 7 версию примера все пости получаеться но с подписями ничего не могу придумать)

заранее спасиьо за ответы
Автор: SHAH1
Дата сообщения: 12.11.2007 16:11

Цитата:
Это что имеется в виду? Если глобальный поиск по всему коду проекта, то подскажите, под какую кнопку его запрятали! Кроме search-replace внутри каждого скрипт-эдитора ничего не вижу.


Поиск по ключевым словам на страницах
Вы можете определить список ключевых слов для каждой страницы. И при выполнении приложения использовать новые действия для поиска страниц с нужными ключевыми словами, создавать индексную таблицу ключевых слов, показывать пользователю диалог поиска по ключевым словам.
Автор: Kindly
Дата сообщения: 12.11.2007 19:01
Volgar, все что знаю:
1. Анимированный GIF нельзя использовать в проектах, т.е. можно, но aнимации не будет.
2. Плагины дополнительных переходов страниц в Варезнике, там и патч найдешь
3. Все зависит от задачи
4. В этом не понимаю, но врядли
5. Простой код
6. Конкретная защита StarForce, ну можно Armadillo Custom Professional посоветовать, но имей в виду, что сам движок защищать бестолку, т.к. его подменить легко, можно лишь проверять в коде md5-хеш движка, но не просто if md5 == sdfhj3434h34jh634hj, а хеш не держать в открытом виде. Еще много преимущества при создании Web Executable. Короче закончишь проект, дай знать
Автор: Drusus
Дата сообщения: 12.11.2007 20:16
ZatarNew
Цитата:
с подписями ничего не могу придумать

Для превью в ThumbList-плагине, вывод имени файла в Paragraph. Для ListBox аналогично
Код: nIndex = ThumbList.GetSelectedItems("img_list");                    
tblInfo = ThumbList.GetItemInfo("img_list",nIndex[1]);                    
Paragraph.SetText("Paragraph", "" ..tblInfo.filetitle);
Автор: Volgar
Дата сообщения: 12.11.2007 22:04
Kindly cпасибо. Про анимированный ГИФ конечно засада

Насчет защиты. Вот в MMB удалось реализовать защиту через ID компьютера, т. е. пользователю купившему программку высылается сгенерированный номер привязанный к ID. Одно напрягает, а насколько корректна такая система? Вдруг пльзователь сменит комп и опять ему придется проходить процедуру идентификации...
Автор: mur55
Дата сообщения: 12.11.2007 22:23
Народ, PLS, ДЕЙСТВУЮШЕЕ лекарство для версии 6.0.5.0,
если есть!!!
Автор: GOOSE
Дата сообщения: 13.11.2007 00:05
mur55
За этим - в варезник! Там есть все
Volgar
Я дополню Kindly:
1. Нет. У разрабов какие то проблемы с лицензированием GIF...
4. Нет. И не планируют...
6. Через АйДи можно, но это некорректно, сам сказал
Все равно, если сломана родительская прога, то все, что она "родит" будет сломано также
Ежели ты продолжаешь хотеть себе и юзерам гемора, то посмотри в хелпе, там есть простые примеры защиты... Генери код, высылай пользователю и все дела
Автор: Zloy_Gelud
Дата сообщения: 13.11.2007 01:15
Ребз, не пойму, почему не работает ентот код?!
Global Functions

Код: function GetFolderNames(sFolder)
    tFolderNames = {};
    local nInd = 1;
    if (Folder.DoesExist(sFolder)) then
        local tFolderPaths = Folder.Find(sFolder.."\\", "*", false, nil);
            if (tFolderPaths) then
                for n, cFolderPath in tFolderPaths do
                    local nInd = String.ReverseFind(cFolderPath, "\\", false);
                    local cFolderName = String.Right(cFolderPath, String.Length(cFolderPath) - nInd);
                    tFolderNames[nInd] = {Name = cFolderName, Path = cFolderPath};
                    nInd = nInd + 1;
                end
            end
    end
    return tFolderNames;
end
Автор: tavria2
Дата сообщения: 13.11.2007 11:51
Zloy_Gelud

Цитата:
Ребз, не пойму, почему не работает ентот код?!
Зачем-же ты ломаешь индекс, экономишь на переменных? Измени имя переменной: nInd.

Global Functions
Код: function GetFolderNames(sFolder)
tFolderNames = {};
local nInd = 1;
if (Folder.DoesExist(sFolder)) then
local tFolderPaths = Folder.Find(sFolder.."\\", "*", false, nil);
if (tFolderPaths) then
for n, cFolderPath in tFolderPaths do
local nInd = String.ReverseFind(cFolderPath, "\\", false);
local cFolderName = String.Right(cFolderPath, String.Length(cFolderPath) - nInd);
tFolderNames[nInd] = {Name = cFolderName, Path = cFolderPath};
nInd = nInd + 1;
end
end
end
return tFolderNames;
end
Автор: oumser
Дата сообщения: 13.11.2007 12:08
Можно ли на странице в определенной зоне прокручивть картинки? или кнопки
Автор: GOOSE
Дата сообщения: 13.11.2007 12:15
oumser
Можно. Используй Вэб объект

Добавлено:
Drusus
Насчет поиска...
Сам не разбирался, но смотри новые действия:
Application.MakeKeywordIndex
Application.SearchKeywords
Автор: ZatarNew
Дата сообщения: 13.11.2007 15:15
Drusus спасибо большое, с подписями ясно.
а вот с по поводу полноценного развертывания в размер экрана, видимо неполучиться?
Автор: Zloy_Gelud
Дата сообщения: 13.11.2007 19:01
tavria2
Пасибо большое, что ткнул носом..в след. раз буду внимательнее.


ZatarNew

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

В общем получиться..на сайте GOOSE есть такой навороченный примерчик, как
List-Load-Crop-Image.apz. Там в Global Functions закоментен следующий код:

Код: ---This function is to resize all objects at correct position when Window is Resized
tblObjectType = {}
tblObjectType[OBJECT_IMAGE] = Image;

function Init()
    m_tblObjectData = {};
    tblObjects = Page.EnumerateObjects();
    if tblObjects then
        for index, sObject in tblObjects do
            local Object = tblObjectType[Page.GetObjectType(sObject)];
            local m_PosXR = Object.GetPos(sObject).X / Page.GetSize().Width;
            local m_PosYR = Object.GetPos(sObject).Y / Page.GetSize().Height;
            local m_SizeWR = Object.GetSize(sObject).Width / Page.GetSize().Width;
            local m_SizeHR = Object.GetSize(sObject).Height / Page.GetSize().Height;
            m_tblObjectData[Table.Count(m_tblObjectData) + 1] = {Name=sObject, PosXR=m_PosXR , PosYR=m_PosYR, SizeWR= m_SizeWR, SizeHR=m_SizeHR};
        end
    end
end

function Do_OnSize(e_PageWidth, e_PageHeight)
    if m_tblObjectData then
        Application.SetRedraw(false)
        for z=1, Table.Count(m_tblObjectData) do
            m_Object = tblObjectType[Page.GetObjectType(m_tblObjectData[z].Name)];
            m_Object.SetSize(m_tblObjectData[z].Name, e_PageWidth * m_tblObjectData[z].SizeWR, e_PageHeight * m_tblObjectData[z].SizeHR)
            m_Object.SetPos(m_tblObjectData[z].Name, e_PageWidth * m_tblObjectData[z].PosXR, e_PageHeight * m_tblObjectData[z].PosYR)
        end
        Application.SetRedraw(true)
    end
end
Автор: GOOSE
Дата сообщения: 14.11.2007 09:19
ZatarNew
Смотри в новой версии есть изменение размеров объектов...
Пока ничего не тестировал, сказать не могу, но видеть-видел
...в свойсвах объектов смотри...
Автор: ZatarNew
Дата сообщения: 15.11.2007 10:52
Zloy_Gelud я сам его не доработаю наверно( поищи пожалуйста рабочий код, буду очень благодарен)

GOOSE в новой версии действительно есть auto-resize , но работает он как то некорректно, там стоит выбор в какую сторону обьект растягивать, и как я не мудрил с
настройками , обьекты тянулись друг на друга(
Автор: Zloy_Gelud
Дата сообщения: 15.11.2007 23:02
2ZatarNew & 2ALL

Цитата:
..поищи пожалуйста рабочий код..

Поискал и увы не нашел (..НО все-таки я его переделал [more=заново]
Если сохранить нижеследующий код:

Код: tblObjectType = {}
tblObjectType[OBJECT_IMAGE] = [[Image]];
tblObjectType[OBJECT_BUTTON] =[[Button]];
tblObjectType[OBJECT_LABEL]=[[Label]];
tblObjectType[OBJECT_PARAGRAPH]=[[Paragraph]];
tblObjectType[OBJECT_IMAGE]=[[Image]];
tblObjectType[OBJECT_FLASH]=[[Flash]];
tblObjectType[OBJECT_VIDEO]=[[Video]];
tblObjectType[OBJECT_WEB]=[[Web]];
tblObjectType[OBJECT_INPUT]=[[Input]];
tblObjectType[OBJECT_HOTSPOT]=[[Hotspot]];
tblObjectType[OBJECT_LISTBOX]=[[ListBox]];
tblObjectType[OBJECT_COMBOBOX]=[[ComboBox]];
tblObjectType[OBJECT_PROGRESS]=[[Progress]];
tblObjectType[OBJECT_TREE]=[[Tree]];
tblObjectType[OBJECT_PLUGIN]=[[Plugin]];

-- Функция: Init();
-- Return: Возвращает таблицу, содержащую структуру из всех объектов на странице, их начальных размеров и позиций

function Init()
m_tObjectData = {};
tObjects = Page.EnumerateObjects();
if (tObjects) then
        for n, sObject in tObjects do
            local Object = tblObjectType[Page.GetObjectType(sObject)];
            sScript = "m_PosXR = "..Object..".GetPos(\""..sObject.."\").X / Page.GetSize().Width;\r\nm_PosYR = "..Object..".GetPos(\""..sObject.."\").Y / Page.GetSize().Height;\r\nm_SizeWR = "..Object..".GetSize(\""..sObject.."\").Width / Page.GetSize().Width;\r\nm_SizeHR = "..Object..".GetSize(\""..sObject.."\").Height / Page.GetSize().Height;\r\n";
TextFile.WriteFromString(_TempFolder.."\\Script.lua", sScript, false);
            Application.RunScriptFile(_TempFolder.."\\Script.lua");
m_tObjectData[Table.Count(m_tObjectData) + 1] = {Name=sObject, PosXR=m_PosXR , PosYR=m_PosYR, SizeWR= m_SizeWR, SizeHR=m_SizeHR};
end
end
return m_tObjectData;
end

-- Функция: Do_OnSize();
-- Прописывает код на On Size Страницы, изменяющий положение и размеры всех объектов в зависимости от изменений размеров самой страницы
-- Return: None

function Do_OnSize()
local sScript = "";
if (m_tObjectData) then
Application.SetRedraw(false);
for z=1, Table.Count(m_tObjectData) do
m_Object = tblObjectType[Page.GetObjectType(m_tObjectData[z].Name)];
    sScript = sScript..m_Object..".SetSize(\""..m_tObjectData[z].Name.."\", e_PageWidth * "..m_tObjectData[z].SizeWR..", e_PageHeight * "..m_tObjectData[z].SizeHR..");\r\n"..m_Object..".SetPos(\""..m_tObjectData[z].Name.."\", e_PageWidth * "..m_tObjectData[z].PosXR..", e_PageHeight * "..m_tObjectData[z].PosYR..");\r\n";
    Application.SetPageScript("Page1", "On Size", sScript);
end
Application.SetRedraw(true);
end
end

-- Функция: SetActions();
-- Прописываем действия на On Show всех страниц в проекте
-- Return: None

function SetActions()
    tPages = Application.GetPages();
    for n, cNamePage in tPages do
        cOldScript = Application.GetPageScript(cNamePage, "On Show");
        Application.SetPageScript(cNamePage, "On Show", cOldScript.."\r\nInit();\r\nDo_OnSize();");
    end
end

SetActions();
Автор: ZatarNew
Дата сообщения: 16.11.2007 15:55
спасибо огромное.
код работает!)) ( правда пока что у меня он изменяет только первую страницу,
буду разбираться)
Автор: Zloy_Gelud
Дата сообщения: 17.11.2007 17:40
ZatarNew (!Код немного исправлен)

Цитата:
правда пока что у меня он изменяет только первую страницу

Действительно..
Переписал [more=код]
Код: tblObjectType = {}
tblObjectType[OBJECT_IMAGE] = [[Image]];
tblObjectType[OBJECT_BUTTON] =[[Button]];
tblObjectType[OBJECT_LABEL]=[[Label]];
tblObjectType[OBJECT_PARAGRAPH]=[[Paragraph]];
tblObjectType[OBJECT_IMAGE]=[[Image]];
tblObjectType[OBJECT_FLASH]=[[Flash]];
tblObjectType[OBJECT_VIDEO]=[[Video]];
tblObjectType[OBJECT_WEB]=[[Web]];
tblObjectType[OBJECT_INPUT]=[[Input]];
tblObjectType[OBJECT_HOTSPOT]=[[Hotspot]];
tblObjectType[OBJECT_LISTBOX]=[[ListBox]];
tblObjectType[OBJECT_COMBOBOX]=[[ComboBox]];
tblObjectType[OBJECT_PROGRESS]=[[Progress]];
tblObjectType[OBJECT_TREE]=[[Tree]];
tblObjectType[OBJECT_PLUGIN]=[[Plugin]];

-- Функция: Resize();
-- Эта функция изменяет размеры и позиции всех объектов на странице в зависиимости от изменений размеров самой страницы

function Resize()
m_tObjectData = {};
local sScript = "";
tObjects = Page.EnumerateObjects();
if (tObjects) then
        for n, sObject in tObjects do
            local Object = tblObjectType[Page.GetObjectType(sObject)];
            s1Script = "m_PosXR = "..Object..".GetPos(\""..sObject.."\").X / Page.GetSize().Width;\r\nm_PosYR = "..Object..".GetPos(\""..sObject.."\").Y / Page.GetSize().Height;\r\nm_SizeWR = "..Object..".GetSize(\""..sObject.."\").Width / Page.GetSize().Width;\r\nm_SizeHR = "..Object..".GetSize(\""..sObject.."\").Height / Page.GetSize().Height;\r\n";
TextFile.WriteFromString(_TempFolder.."\\Script.lua", s1Script, false);
            Application.RunScriptFile(_TempFolder.."\\Script.lua");
m_tObjectData[Table.Count(m_tObjectData) + 1] = {Name=sObject, PosXR=m_PosXR , PosYR=m_PosYR, SizeWR= m_SizeWR, SizeHR=m_SizeHR};
end
end
if (m_tObjectData) then
    Application.SetRedraw(false);
    for z=1, Table.Count(m_tObjectData) do
    m_Object = tblObjectType[Page.GetObjectType(m_tObjectData[z].Name)];
    sScript = sScript..m_Object..".SetSize(\""..m_tObjectData[z].Name.."\", e_PageWidth * "..m_tObjectData[z].SizeWR..", e_PageHeight * "..m_tObjectData[z].SizeHR..");\r\n"..m_Object..".SetPos(\""..m_tObjectData[z].Name.."\", e_PageWidth * "..m_tObjectData[z].PosXR..", e_PageHeight * "..m_tObjectData[z].PosYR..");\r\n";
end
Application.SetRedraw(true);
    end
    tPages = Application.GetPages();
    for n, cNamePage in tPages do
        Application.SetPageScript(cNamePage, "On Size", sScript);
    end
end

function SetActions()
    tPages = Application.GetPages();
    for n, cNamePage in tPages do
        cOldScript = Application.GetPageScript(cNamePage, "On Show");
        Application.SetPageScript(cNamePage, "On Show", cOldScript.."\r\nResize();");
    end
end

SetActions();
Автор: Zloy_Gelud
Дата сообщения: 17.11.2007 23:56

P.S. IMHO, при использовании ентого кода, лучше также использовать и ограничение минимальных размеров страницы (вроде енто реализуемо в 7 версии, сам пока юзаю 6)
Автор: DimSUN
Дата сообщения: 18.11.2007 16:07
Перешёл на 7-ку сразу с 4-й версии. И то, только из-за эффектов в переходе страниц (давно не хватало).
Ну чтоже... я сильно расстроен:

1) подгрузить TIFF (несмотря на доступность его) в качестве исходника кнопки так и не выходит - ругается на невозможность раскомпрессировать. (Хотя при сохранении файла архивация не включалась).
2) В редакторе кнопок используется свой проводник (?!) и в нём невозможно отсортировать диски - всё расположено хз как. Первым стоит W, потом F, потом D, потом Е и всё это вперемешку с флопами и СД-ромами. Тоска...
3) При всём том, что теперь кнопки == отдельные файлы, они при редактировании не перезагружаются в проект. Приходится входить в свойства батона и вызывать этот файл по новой. Могли бы банальный autoreload сделать чтоли. Т.о. для меня смысл отдельного батон-редактора совершенно не ясен - измемение .btn не изменит все эти кнопки в проекте.
4) Аналогичная проблема и с растрами: меняем картинку используемую в проекте, а она не перерисовывается при компиляции. А ведь 4-я версия прекрасно обновляла заменённый файл без релоада имиджа. Сейчас же приходится лезть и перевызывать ручками тот же самый файл, даже несмотря на то, что он лежит в каталоге \Images
5) А уж двойные обратные слеши в скриптовых путях, уххх... это НЕЧТО
6) Элемент Paragraph не умеет сжиматься мышкой до одной строки. С помощью счётчиков может, а мышкой не может. Явный баг и морока, особенно если этот элемент скриптовать - вокруг одного слова большая активная зона и конфликты с близкорасположенными соседями.
7) И наконец этот з"ёб с кривой "Западной" раскладкой - вечно кракозяблит, если не выбрать кирилицу. В 4-й версии такого не было - всё работало и в западке. Хоть бы дефолтовые настройки чтоли сделали


Это так вкратце, за полдня работы....
Автор: GOOSE
Дата сообщения: 18.11.2007 19:47
DimSUN
В общем, все твои семь пунктов имели место и в 5, и в 6 версии
Не совсем корректно сравнивать 4 и 7.
Сам движек другой, принцип другой... чё уж тут сравнивать.

2-4 пункты - скорее всего ты правишь файлы не в директории проекта, а в галерее. Проверь, такого быть не должно!
6 пункт - умеет, надо отключить вертикальный скролл
Только не понял насчет "скриптования"... Это что такое? Это если хотспот назначать или что?
7 пункт - если напрягает, можно залезть в настройки проги, там все в XML файлах... только точно не знаю где... Помню, что когда-то смотрел, там ANSI по умолчанию идет...
Автор: DimSUN
Дата сообщения: 18.11.2007 22:46
GOOSE

Цитата:
В общем, все твои семь пунктов имели место и в 5, и в 6 версии
Не совсем корректно сравнивать 4 и 7.
Сам движек другой, принцип другой... чё уж тут сравнивать.

И правда, установил 6-ку, там точно так-же... Я расстроен.


Цитата:
6 пункт - умеет, надо отключить вертикальный скролл

Точно :/


Цитата:
7 пункт - если напрягает, можно залезть в настройки проги, там все в XML файлах... только точно не знаю где... Помню, что когда-то смотрел, там ANSI по умолчанию идет...

Если вдруг случайно, как-то где-то всплывёт.... дай знать плз
А то мне писать много текстов, я уже устал.

Автор: GOOSE
Дата сообщения: 19.11.2007 07:42
DimSUN

Цитата:
А то мне писать много текстов, я уже устал.

Ну ты же не оставляешь шрифт и размер по умолчанию? Все равно ведь лезешь в настройки... лишний клик мышкой - и все дела
Автор: ZatarNew
Дата сообщения: 19.11.2007 09:10
Zloy_Gelud вобщем направление движения понятно) код на данный момент меняет размер страницы при развертывании, но ничего не делает при переходе с одной страницы на другую, получаеться страницы разного размера) до кучи если уменьшить окно не на странице которую ты развернул, развернутая страница наоборот уменьшиться)) нужна дальнейшая доработка))
но все равно спасибо) попробую пошаманить вечерком)
Автор: SNata
Дата сообщения: 19.11.2007 14:52
AMS 7 патч Вылеченый от препадочных разработчиков, которым влом купить лицензию на МР3 фрмат+ добавил ещё несколько удобств...

http://rapidshare.com/files/70780133/ams7_patch__mp3_vob_txt_.exe.html

Работаю над кирилицей по дефолту)
Автор: DimSUN
Дата сообщения: 19.11.2007 17:10
А вот можно-ли как-то рулить порядком имиджей через скрипт?

Представьте 2(или более) слоя, перекрывающих друг друга. Кликаем на задний - и он выходит на первый план. Что-нибудь типа "change layer order" есть?

А?
Автор: SNata
Дата сообщения: 19.11.2007 17:28
хм прямым вроде нету, в голову лезет только смена страниц щас) просто переводил пол вечера)
Автор: GOOSE
Дата сообщения: 19.11.2007 17:50
DimSUN
А как ты на задний кликнешь? Если он "задний"?
Если через что-то другое, то только показ\скрытие имиджа, либо изменения прозрачности через Image.SetOpacity
Автор: SNata
Дата сообщения: 19.11.2007 18:01
Не он типа хочет чтоб вылазило наверх) я пока допёр на квадратную голову тока сменой страниц)

Страницы: 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768

Предыдущая тема: Symantec Endpoint Protection - SEP


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