Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Компьютеры » Программы » Закладки » Indigo Rose AutoPlay Media Studio (часть 1)

Модерирует : gyra, Maz

Widok (03-09-2007 23:10): лимит страниц. продолжаем здесь  Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101

   

maykop3000



Full Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Для ленивых и нетерпеливых обзор темы aka FAQ
 
Где почитать:
------------------------
Для начала читаем статьи: тут раз илитут раз и два и три
Скриптовый язык LUA (англ) На русском здесь,  еще тут и  тут
Видео-уроки (анг)  
 
 
Где поживиться:
----------------------------
Видео-уроки (Flash) от производителя (англ)
Тоже официальное видео (англ)
Бесплатные шаблоны (маски) для окон ваших приложений (англ)
"Подарки к Рождеству" на оффсайте (англ)
Плагин LuaCOM (англ)
Примеры для начинающих (англ)
Неплохие примеры, библиотеки (англ)
Еще примеры, один из самых активных юзеров на оффоруме (англ)
Плагины и библиотеки (не все free) (англ)
Еще плагины (англ)
Собрание уроков (иногда с русскими объяснениями)  
 
Где найти ответы на вопросы:
------------------------------------
Проблема с путями при создании приложения .EXE и ресурсами на CD от Reineke
Запуск файлов из Web объекта
Реализация Play-листов для Винампа от BOObastis
Виды путей, используемых в AMS от GOOSE
Таблица дисков системы от Lexua
Вывод HTML отчета с использованием SQLite плагина от IndigoRose
Используем таймер
Полноэкранный режим для приложения
Показ\скрытие объектов по действиям мыши
Последовательный запуск нескольких файлов
Запуск WinRARa для распаковки архивов от Reineke
Изменяем скроллинг ListBox-у от GOOSE
Изменяем курсор в приложении от GOOSE
Перенос строки во всплывающей подсказке от GOOSE
Изменяем иконку приложения от Lexua
Включение\отключение фоновой музыки кнопкой
Отправка данных из форм по e-mail от GOOSE
Запускаем экзешник по информации из реестра от Lexua
Утилита для защиты авторанов
Из окна в полноэкранный режим и обратно
Для тех, у кого русский проект с "кракозяблами"
Выделение и копирование в буфер текста\части текста от GOOSE
Работаем с запароленными архивами от GOOSE
Работаем с объектом дерева от GOOSE
Проигрвывание MP3 из ListBox-а подряд от UMode
Простой пример бегущей строки от GOOSE
И более красивый от tavria2
Ряд вопросов и ответов по созданию меню для DVD от tavria2
 
------------------------
Шапка исправлена. Актуально на 3.08.06 GOOSE
------------------------
 
Разработчиков autorun'ов и графических дизайнеров приглашаем посетить проект шаблонов для Autoplay Media Studio:
http://ams-templates.com

Всего записей: 544 | Зарегистр. 24-09-2002 | Отправлено: 23:32 05-12-2002 | Исправлено: Maz, 12:33 25-09-2017
tavria2



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Zloy_Gelud
Зачем там цикл, помойму хватит и if (Drive.GetType(tPath.Drive) == 3) then...  

Всего записей: 1127 | Зарегистр. 19-01-2005 | Отправлено: 00:13 13-06-2007
Avandom

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Zloy_Gelud
У тебя получается цикл, при котором, если ты выберешь диск "C:" то у тебя он приостановится, а если ты выберешь диск "D:", то  

Цитата:
if (tPath.Drive.."\\" ~= cDriveLetter) then

сначала сверится с диском С и так как возвращается в данном случае true, то и выходит один раз сообщение

Цитата:
Dialog.Message("Ошибка", "Установка на этот диск не возможна.", MB_OK, MB_ICONEXCLAMATION, MB_DEFBUTTON1);

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

Код:
 
local sPath = Input.GetText("Install Directory Entry");     -- путь установки                                                  
    local tPath = String.SplitPath(sPath);                        -- разлаживаем путь...                                      
    local cDrive = String.Left(sPath, 3);                        -- первые 3 знака в пути установки  
    tDrives = Drive.Enumerate();                                -- таблица дисков  
-- если буква диска не получена или третий символ в пути установки не является слэшем или путь установки менее 3 знаков  
if (tPath.Drive == "") or (String.Right(cDrive, 1) ~= "\\") or (String.Length(sPath) <= 3) then  
    Dialog.Message("Ошибка", "Вы должны указать полный путь с буквой диска; например:\r\n\nC:\\APP", MB_OK, MB_ICONEXCLAMATION, MB_DEFBUTTON1);  
    else  
        for i, cDriveLetter in tDrives do                        -- перебитаем в цикле по одному диску  
            if (Drive.GetType(tPath.Drive) == 3) then                            
                else
                    Dialog.Message("Ошибка", "Установка на этот диск не возможна.", MB_OK, MB_ICONEXCLAMATION, MB_DEFBUTTON1);  
                break;
            end
        end  
end
 

Всего записей: 37 | Зарегистр. 11-05-2007 | Отправлено: 00:45 13-06-2007 | Исправлено: Avandom, 00:56 13-06-2007
Avandom

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
tavria2
Возвращаясь к программе Navigator очень нужна такая реализация с деревом, вот и попытался сделать по времени закрытие окна с сообщением "C stack overflow". Но почему-то не получается его закрыть.
Имя класса этого окна с ошибкой - #32770
Имя Заголовка окна естественно - Error
Но функция  

Код:
 
Page.StartTimer(1000);
function KillError(hError)
hError = DLL.CallFunction("C:\\WINDOWS\\System32\\user32.dll", "FindWindowA", "#32770,\"Error\"", DLL_RETURN_TYPE_LONG, DLL_CALL_STDCALL);
if (hError) then
Window.Close(hError, CLOSEWND_SENDMESSAGE);
else
end
end
 

почему-то не работает, хотя пробовал создавать подобное окно самостоятельно и пробовал ту же самую реализацию и все получалось нормально... Может у тебя есть другие мысли по этому поводу???
А в данном случае получается, что он каждую секунду открывает еще одно окно с сообщением "C stack overflow"

Всего записей: 37 | Зарегистр. 11-05-2007 | Отправлено: 13:16 13-06-2007
tavria2



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Avandom

Цитата:
Возвращаясь к программе Navigator очень нужна такая реализация с деревом, вот и попытался сделать по времени закрытие окна с сообщением "C stack overflow".  

А какой смысл закрывать окно ошибки?  Часть данных уже утеряна...  
Возможно я бы нашел обход проблеммы с переполнением стека, но у меня не получается смоделировать такую ситуацию.

Всего записей: 1127 | Зарегистр. 19-01-2005 | Отправлено: 16:25 13-06-2007
Zloy_Gelud



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
tavria2
Avandom
СПАСИБО

Всего записей: 3266 | Зарегистр. 30-05-2007 | Отправлено: 18:02 13-06-2007
Avandom

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
tavria2
Да смысл только один - нужна такая реализация с объектом tree.
Как ты думаешь, а если попробовать через АПИ-функции FindFirstFile и FindNextFile реализовать, получится??? Или ошибка содержится в объекте tree???

Всего записей: 37 | Зарегистр. 11-05-2007 | Отправлено: 23:42 13-06-2007
tavria2



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Avandom

Цитата:
Как ты думаешь, а если попробовать через АПИ-функции FindFirstFile и FindNextFile реализовать, получится???  
Думаю, что нет. Дело в том, что в этих ф-циях используется 2-й параметр, как структура и к тому же не ByVal, а AMS поддерживает только ByVal.

Цитата:
Или ошибка содержится в объекте tree???

Если-бы я знал... Предполагаю что ошибка содержится в LUA.

Всего записей: 1127 | Зарегистр. 19-01-2005 | Отправлено: 10:24 14-06-2007
tavria2



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
2ALL
У кого были проблемы с переполнением стека в примере Navigator, просьба протестировать:
Navigator 2.3.apz (36.5 Кб).

Всего записей: 1127 | Зарегистр. 19-01-2005 | Отправлено: 18:05 15-06-2007
Avandom

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
tavria2
Это конечно здорово!!! Работает нормально, но я не вижу никакой разницы между Navigator 2.2 и Navigator 2.3...
Может я упустил чего...
Объясни пожалуйста, в чем все-таки проблема была????

Всего записей: 37 | Зарегистр. 11-05-2007 | Отправлено: 22:14 15-06-2007
tavria2



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Avandom
На короткое время мне был предоставлен доступ к компу на котором, присутствовала проблема с переполнением стека. К сожалению мне не хватило этого времени для проведения экспериментов и выявления истинной причины вызывающей проблему со стеком.

Цитата:
но я не вижу никакой разницы между Navigator 2.2 и Navigator 2.3...

Разница в том, что я закоментировал в событии On Expanded объекта Tree, строки отвечающие за изменение вида картинки узла (открытая/закрытая папка), т.к. любое изменение св-ва узла в событии On Expanded, при формировании дочерних узлов - вызывало переполнение стека. Также был заменен оператор else на elseif.

Всего записей: 1127 | Зарегистр. 19-01-2005 | Отправлено: 00:08 16-06-2007 | Исправлено: tavria2, 00:09 16-06-2007
mkvrd



BANNED
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору


Всего записей: 36 | Зарегистр. 04-01-2007 | Отправлено: 08:04 16-06-2007 | Исправлено: mkvrd, 20:32 16-06-2007
Kindly



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
А реально ли с помощью каких-нибудь библиотек прикрутить подсветку синтаксиса кода, например в объекте Input или Paragraph? Имеется в виду какой-нибудь вьювер скриптов.

Всего записей: 3000 | Зарегистр. 04-08-2005 | Отправлено: 18:30 16-06-2007
tavria2



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Kindly

Цитата:
А реально ли с помощью каких-нибудь библиотек прикрутить подсветку синтаксиса кода, например в объекте Input или Paragraph?

Эти объекты не могут одновременно выводить несколко цветов и шрифтов. Можно попробовать через Web объект, т.е. налету формировать html-код из текстового файла и грузить его в Web объект.

Всего записей: 1127 | Зарегистр. 19-01-2005 | Отправлено: 12:22 17-06-2007 | Исправлено: tavria2, 12:28 17-06-2007
Kindly



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
tavria2, хорошо, допустим. А как быть с подсветкой синтаксиса?

Всего записей: 3000 | Зарегистр. 04-08-2005 | Отправлено: 12:32 17-06-2007
tavria2



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Kindly
Попробовал и бросил - слишком много всего нужно учитывать...

Всего записей: 1127 | Зарегистр. 19-01-2005 | Отправлено: 18:10 17-06-2007
d3d



Newbie
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Пробую объединить 3 авторана: Delphi 6, Delphi 7, и Borland Developer Studio 2006.
То есть создаю один авторан с кнопками который запускает автораны этих дисков.
Так вот проблемка в следующем:
Для Borland Developer Studio 2006 создан авторан: Install.exe (который я соответственно и пытаюсь запустить), а мне выдается ошибка:
 
Arhive does not exist - Filename is blank.
 
В папке вместе с install.exe находиться файл install.jar в котором прописано меню и тд., то есть если логично подумать install.exe должен при запуске подтягивать install.jar, чего не происходит и получается ошибка->пустое меню.
Что можете посоветовать.
Для запуска использую строку:
File.Open("AutoPlay\\Studio2006\\Install.exe", "", SW_SHOWNORMAL);
Пробовал использовать метод Reineke, подумав, что проблемы с путями, не выходит.

Всего записей: 7 | Зарегистр. 29-01-2006 | Отправлено: 08:03 18-06-2007
Robby

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
d3d
Попробуй запускать так File.Open("AutoPlay\\Studio2006\\Install.exe", "AutoPlay\\Studio2006", SW_SHOWNORMAL);
т.е. заполни параметр WorkingFolder (Рабочая папка) указав там папку где лежит твой Install.exe

Всего записей: 879 | Зарегистр. 28-09-2003 | Отправлено: 09:00 18-06-2007 | Исправлено: Robby, 09:01 18-06-2007
kalmykoff

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Господа AMS заседатели,извините что прерываю вашу уточенную и думаю
весьма полезную беседу,скажите пожалуйста можно ли сделать из АМS
прогу что б она открывала картинку но только одну.
           Смысл в чем ... у меня 1000 jpg и не хотелось бы делать 1000 страниц.
Выглядит это так ,на одной страничке много Thrumb  и при клике мышью  
на уменьшенном изображении хочется что б вылетала картинка на весь экран.
если я делаю путь к infraview  и xnview они открывают картинки со всеми програмными
надстройками и не всегда раскрываются на полный экран.А так если б была прога,
я бы сделал к ней путь (по вашему совету) и довольный пошел бы попить чайку !
   Все скрипты для эксперимента я повытаскивал из slideshow и примеров
от TAVRIA2 ,но у него там полноценный просмотрщик.Бился я с ними и день и ночь
но никак не победил проклятого дракона .
            Буду очень признателен !

Всего записей: 22 | Зарегистр. 20-05-2007 | Отправлено: 20:33 18-06-2007
tavria2



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
kalmykoff
  1. Создаем в проекте 2 страницы и размещаем на 1-й - объект ThumbList, а на 2-й - объект Image.  
  2. В событии On Double-Click объекта ThumbList - сохраняем в переменной путь к выделенной картинке и делаем переход на 2-ю страницу.
  3. На 2-й странице в событии On Preload разверачиваем окно на весь экран.  
    Загружаем картинку из переменной в объект Image.  
    Получаем размеры картинки и развернутого окна.  
    Вычисляем, что больше у картинки - ширина или высота.  
    Получаем относительный коэффициент, путем деления большего размера на меньший.  
    Если ширина болшьше высоты, то устанавливаем ширину объекта Image равной ширине окна, а высоту получаем путем умножения высоты на коэффициент.  
    Далее нужно расчитать и установить вертикальную позицию объекта Image так, чтобы он оказался по центру окна.
    Вариант, если высота картинки больше ширины - описывать не буду, т.к. он аналогичен выше указанному варианту.
    После всех этих манипуляций, картинка будет растянута на весь экран с соблюдением пропорций.
    Если нужен оригинальный размер картинки, тогда все еще проще: разворачиваем окно на весь экран, загружаем картинку в  объект Image, устанавливаем его размер и центрируем относительно окна.
  4. В событии On Click объекта Image, делаем переход на 1-ю страницу.
  5. В событии On Preload 1-й страницы, восстанавливаем размер окна в первоначальное состояние.
Ну вот и все!

Всего записей: 1127 | Зарегистр. 19-01-2005 | Отправлено: 10:16 19-06-2007 | Исправлено: tavria2, 10:19 19-06-2007
kalmykoff

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Запутался я в скриптах,сложно для меня немного на первых порах.
Если будет времечко нельзя ли поподробней , а может стоило файл примера попросить
да неловко загружать. Но все равно сижу ковыряю ю ю ю ю ю ю ю ю у у у у у !!!!  

Всего записей: 22 | Зарегистр. 20-05-2007 | Отправлено: 19:49 21-06-2007
   

Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101

Компьютерный форум Ru.Board » Компьютеры » Программы » Закладки » Indigo Rose AutoPlay Media Studio (часть 1)
Widok (03-09-2007 23:10): лимит страниц. продолжаем здесь


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2024

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru