На главную
ПРАВИЛА FAQ Помощь Участники Календарь Избранное RSS
msm.ru
! Правила раздела "Наши Исходники"
Раздел предназначен для публикации различных исходников и программных решений (в виде исходных текстов), которые Вы считаете достойными внимания и/или интересными. Язык исходника значения не имеет. Это может быть C/C++, Pascal, Perl, PHP, C#, Foth, Prolog или любой другой существующий язык программирования. Единственный момент – в названии темы этот язык должен быть указан. Например, «[C++] Представление чисел в римской записи». Сам исходный текст должен содержаться в первом посте темы. Если исходник занимает не больше одного-двух экранов, то допустимо его публикация непосредственно в посте. Иначе исходный текст должен быть прикреплен к посту в виде архива. Кроме того, первый пост должен содержать:

- Информацию о платформе/компиляторе, для которых предназначен исходный текст (если эта информация существенна)
- Ссылку на оригинал и автора (если публикуется чужой исходный текст)
- Максимально подробное описание – какую задачу решает опубликованный исходный текст, и чем он интересен.

Плагиат крайне не приветствуется. Также не приветствуется публикация исходных текстов вирусов, крэков и т. п. информации. Это элементарно противозаконно.

Для быстрого поиска нужного исходника можно воспользоваться навигатором:
Быстрый поиск по разделу
Модераторы: Flex Ferrum
  
> [Delphi] AnimationSplash v.2.4.0, Анимированный сплэш - тестирование, советы.
    Animation Splash - набор юнитов для Delphi, который позволяет создать анимированную сплэш форму.
    Поддержка полупрозрачности. Любое количество анимаций. Любое количество текста, выводящегося в ран-тайме. Большое число настроек, позволяют сделать практически любой сплэш, любой сложности.

    Сайт - http://bitoff.ru/asf-main

    Прямые ссылки
    AnimationSplash.v.2.4.0.zip
    Демонстрация работы AnimationSplash:
    Шесть скомпилированных примеров с исходными текстами и исходными изображениями:
    ASFDemo ~ 7-8 метров

    Принимаются вопросы, пожелания, да и просто мнения, а также здоровая критика.
    Сообщение отредактировано: Andy BitOff -
      ASFDemo - Magic:
      ---------------------------
      Asfdemomagic
      ---------------------------
      Access violation at address 00450A50 in module 'ASFDemoMagic.exe'. Write of address FFFFFFF0.
      ---------------------------
      ОК
      ---------------------------

      Добавлено
      При повторном запуске - все нормально!
      Life is what happens to you while you're busy making other plans.
      Моя страница в Google+
        Картинки стоило бы засунуть в ресурсы.
          Цитата Profi @
          Profi
          Access violation

          А, всё, посмотрел по адресу, это старая ошибка уже исправлена. Просто демы не пересоирал на новой версии юнитов. Сегодня обновлю.


          Цитата Герыч @
          Картинки стоило бы засунуть в ресурсы.

          Стоило бы ознакомится с продуктом.
          CreateFrom(FileName: string);
          CreateFrom(Stream: TStream);
          CreateFrom(ResourceName: string; ResourceType: PChar);
          Сообщение отредактировано: Andy BitOff -
            Герыч это не тестирование конечного продукта, а просто тест сплеша, с возможностью поковыряться в коде и поменять картинки на свои.
            user posted image
              Цитата Герыч @
              Картинки стоило бы засунуть в ресурсы.

              А если в том смысле, что их надо было зашить в примерах, то это вовсе не надо, именно для того, чтобы показать как и с чем работает. Но если кто-то будет использовать Animation Splash у себя в проекте, то для доступа к ресурсам предусмотрены методы, которые я описал выше.
                Критическое обновление!

                Всем кто качал до версии 1.1.0, обновление в обязательном порядке.
                Сообщение отредактировано: Andy BitOff -
                  Andy BitOff, а для builder C++ такое будет?
                  user posted image
                    by Andy BitOff не будет.
                    Если кто захочет портировать, то пожалуйста. Если понадобится консультации, я вегда доступен.
                      Обновление.
                      1.2.0
                      * Исправлены все мелкие и крупные утечки памяти, которые не показывал EurekaLog, но показал FastMM 4.92.
                      * Переделан доступ к некоторым объектам ASF
                        Обновление.

                        1.3.0
                        + Добавлена загрузка бэкграунда, анимации и иконок из ресурсов.
                        + Добавлено свойство анимации DelayBetweenPassage - пауза между циклами анимации, что позволяет создать,
                        например, анимацию блика
                        * Изменен формат сохранения анимации и иконок.
                        Придется пересохранить уже созданные ресурсы в новом формате
                        * Мелкие доработки
                          Обновил.
                          Переделал демку Antonn, теперь ее бэкграунд, иконки и добавленная анимация грузятся из ресурсов. Также демонстрирует использование свойства DelayBetweenPassage.

                          Сорри, была небольшая ошибка. Исправлено.

                          Последняя версия 1.3.1
                            Обновление.

                            Версия 2.0.0
                            Цитата
                            * Исправлена ошибка использования нескольких экземпляров класса
                            * Исправлена ошибка, при которой возникали проблемы при использовании класса с именем отличным от заданного в модуле ASFMain
                            * Исправлена ситуация, при которой неверно отображался прогресс в прогрессбаре из-за не установки количества секций
                            + Сохранение ВСЕХ данных сплэша в один внешний файл.
                            + Загрузка ранее сохраненного сплэша из файла, ресурсов, потока одной строчкой кода
                            + Добавлена функция GetGPColor, позволяющая вводить цвета в более удобном виде
                            + Добавлены:
                            onStartSplash - Событие возникает перед стартом сплэша
                            onDestroySplash - Событие возникает перед уничтожением сплэша
                            onBeforeDraw - Событие возникает перед началом прорисовки в обработчик передается чистая канва
                            onAfterDraw - Событие возникает после прорисовки в обработчик передается канва с полным изображением сплэша в текущей итерации
                            Следующие три свойства позволяют использовать прогрессбар по своему усмотрению
                            ProgressBarTotalParts - число определяющее 100% части
                            ProgressBarPartComplite - число определяющее выполненное количество
                            ProgressBarPercent - количество выполненного в процентах
                            ProgressBarSectionColor - возможность задать для каждой секции свой цвет
                            BarDrawOnTime - Изменение ProgressBar'а по времени или вручную
                            * Переименованы:
                            ProgressBarCurrentPart -> ProgressBarCurrentSection
                            ProgressBarPatrs -> ProgressBarSectionsCount
                            IncCurrentPart -> IncCurrentSection
                            LoadingPartTime -> LoadingSectionTime
                            * Мелкие исправления


                            Первая версия SplashCreator
                            Программа позволяющая в удобном визуальном редакторе создать сплэш, а затем использовать сохраненные данные в своем проекте.


                            P.S. Если кто-нибудь переведет интерфейс на английский или любой другой язык, буду очень признателен.
                            Сообщение отредактировано: Andy BitOff -
                              Выход новой версии 2.2.0
                              Цитата
                              + onKeyPress
                              + onKeyDown
                              + onKeyUp
                              + ClosingAllow - разрешить закрытие сплэша (Default - True)
                              * небольшие переделки


                              SplashCreator версия 1.1.0
                              поддержка свойства ClosingAllow

                              Переделана демка CustomDraw
                              Показано как рисовать, как закрыть по ESC и использовано свойство ClosingAllow для блокировки закрытия другими способами.
                                Версия 2.2.2
                                + AttemptedClosure - признак попытки закрытия сплэша
                                  Цитата Andy BitOff @
                                  Animation Splash - набор юнитов для Delphi, который позволяет создать анимированную сплэш форму.
                                  Поддержка полупрозрачности. Любое количество анимаций. Любое количество текста, выводящегося в ран-тайме. Большое число настроек, позволяют сделать практически любой сплэш, любой сложности.

                                  отличная вещь молодец, что не бросаешь проект ...
                                  ... mess with the best, die like the rest ...
                                    andrew.virus
                                    Спасибо.

                                    Первый интерес за последние четыре месяца :D
                                      Цитата Andy BitOff @
                                      Первый интерес за последние четыре месяца

                                      просто начал крупный полукоммерческий проект где требуется реализовать нечто подобное ...
                                      ... mess with the best, die like the rest ...
                                        Andy BitOff, респект! Посмотрел демки - супер!
                                        Спасибо что выложил такую красоту. Себе скачал и заныкал ;) обязательно пригодится.

                                        Добавлено
                                        кста,
                                        Цитата Besha @
                                        а для builder C++ такое будет?

                                        а какие проблемы с использованием в Builder'e Delphi-модулей?.. Все и так можно использовать.
                                          Версия 2.2.3
                                          + onEndFade - Событие возникает когда сплэш полностью проявился
                                          + Исправлена 100% загрузка процессора на некоторых машинах
                                          Сообщение отредактировано: Andy BitOff -
                                            В связи с появившейся информацией о вирусе для D4-D7, все демоверсии ASF были пересобраны заново и уже перезалиты.

                                            Приношу всем свои извинения.
                                              Версия 2.3.0

                                              + onDblClick - Сообщения приходящие от мыши
                                              + onMouseDown
                                              + onMouseUp
                                              + onMouseMove
                                              * Переименовано
                                              ProgressBarPercent -> ProgressBarPercentSection
                                              * ProgressBarPercentSection теперь Double
                                              + ProgressBarPercentFull (ReadOnly) - количество выполненного в процентах относительно всего прогрессбара
                                              + Свойство Visible для анимации
                                              + WaitModeStart - Метод вводящий прогрессбар и иконки в режим ожидания с соответствующей индикацией
                                              + WaitModeEnd - Выход из режима ожидания
                                              + isWaitMode - Находимся ли мы в режиме ожидания
                                              + onWaitModeCustomDraw - Событие позволяющее самому рисовать в прогрессбаре режим ожидания, если не устраивает дефолтная прорисовка.
                                              * Изменен порядок прорисовки, теперь сначала рисуется анимация, затем иконки, потом прогрессбар и наконец текст.

                                              Новая демка ASFDemoPool демонстрирующая работу с мышью (несколько курсоров, перемещения, клики, обработка событий связанных с ней). Так же демонстрируется реализация процесса ожидания для прогрессбара. В этой же демке можно увидеть каким образом можно использовать сплэш для создания так называемого окна About.

                                              Обновлен SplashCreator до версии 1.2
                                              Поддержка свойства Visible для анимации и мелкие исправления.

                                              Подробности и пояснения...

                                              Скачать версию 2.3.0 как всегда здесь
                                                Советую, выложить скриншотики в первом посте, желательно анимированные (gif, swf) или небольшое видео с демонстрацией возможностей.
                                                  Дык на сайте есть. Всего один лишний клик. Просто не знаю стОит ли загромождать ветку.
                                                    Последняя версия.

                                                    Версия 2.4.0

                                                    + Поддержка юникода


                                                    Обновлен SplashCreator до версии 1.3
                                                    SplashCreator теперь сохраняет строки в юникоде, и версии дельфей не поддерживающие его (юникода) прочтут эти данные нормально, проблем не будет. Единственное, что если открыть файлы сохраненные SplashCreator'ом версии 1.2 и ниже, то строки будут нечитаемы, строки и названия шрифтов. Я бы советовал открыть старые сейвы, исправить эти проблемы со строками и сохранить заново.

                                                    Скачать версию 2.4.0 как всегда здесь

                                                    Это последняя версия модулей в нынешнем их состоянии. Реализация давно превзошла первичные задумки и дальнейшее сопровождение становится невозможным, да и идей больше нет. Планирую переписать заново, но это уже другая история.
                                                    Сообщение отредактировано: Andy BitOff -
                                                      Спасибо что поделился обалденная вещь.

                                                      Цитата Andy BitOff @
                                                      Дык на сайте есть. Всего один лишний клик. Просто не знаю стОит ли загромождать ветку.

                                                      конечно стоит
                                                        у тебя что-то с сайтом, люди скачать не могут ничего
                                                        user posted image
                                                          Спасибо Антон.
                                                          Ссылка на SpalshCreator - http://www.bitoff.ru/animationsplash/SplashCreator.zip
                                                            Тут есть кто-нибудь пообщаться по компоненту?

                                                            Вопрос такой:

                                                            Вот есть у заставки cвойство "Handle", есть свойство "ShowTaskbarButton" - показывать ли иконку заставки в Панели задач. А есть ли возможность установить какую иконку показывать в Панели задач? Для Форм есть свойство Form1.Icon.Handle, куда можно загрузить свою иконку и тогда она будет показываться в панели задач.

                                                            А здесь как?


                                                            Еще непонятно, что за метод "SetTimerInterval"? что такое метод "FadeSpeed" понятно, а вот что за таймер такой, чего он в заставке отсчитывает?
                                                              предлагаю написать человеку на почту, ибо
                                                              >> Последняя активность на форуме 15 июня 2012, 11:25
                                                              user posted image user posted image
                                                                Цитата POP @
                                                                Вот есть у заставки cвойство "Handle", есть свойство "ShowTaskbarButton" - показывать ли иконку заставки в Панели задач. А есть ли возможность установить какую иконку показывать в Панели задач? Для Форм есть свойство Form1.Icon.Handle, куда можно загрузить свою иконку и тогда она будет показываться в панели задач.

                                                                Нет, это я не предусмотрел. При создании окна инстансу иконки присваивается 0, что эквивалентно null описанному в мсдн, так же там сказано, что "If this member is NULL, the system provides a default icon." Поэтому иконка берется приложения указанная для главной формы.
                                                                Если есть желание, то можно поиграться с этим значением с методе TAnimationSplashForm.CreateMyWnd() использовав, например, LoadIcon.

                                                                Цитата POP @
                                                                Еще непонятно, что за метод "SetTimerInterval"?

                                                                Если вы видели в коде, с этим значением устанавливается основной таймер.
                                                                Весь смысл этого сплэша заключен в следующем.
                                                                Создается поток внутри которого создается свое окно со своей очередью сообщений (именно поэтому оно не виснет даже при использовании sleep в основном потоке). Все остальное, это так... Рисовалка...
                                                                Так вот, после создания окна устанавливается таймер, со значением TimerInterval. Затем начинается обработка очереди. Вот по приходу сообщения таймера происходит прорисовка всего окна.


                                                                И да, я его забросил уже очень давно. Есть желание все переписать, но пока не возможности.
                                                                  Цитата Andy BitOff @
                                                                  И да, я его забросил уже очень давно. Есть желание все переписать, но пока не возможности.


                                                                  Оо.. я думал тема мертвая. Я допилил свою заставку, но получилось с костылями. Например большим недостатком является невозможность выставить таймаут перед началом работы анимации. Мне пришлось первые кадры одинаковыми делать, чтобы эту задержку искусственно создать.

                                                                  А зачем все переписывать? Лучше дорабатывать. Ведь работает все нормально.
                                                                    Цитата POP @
                                                                    А зачем все переписывать? Лучше дорабатывать. Ведь работает все нормально.

                                                                    Нет. Этот проект перерос то, что планировалось в нем реализовать, в результате чего код стал не управляемым. Изначально, я планировал только бекграунд с иконками, ну и прогрессик, а вышло вон сколько.

                                                                    Цитата POP @
                                                                    Например большим недостатком является невозможность выставить таймаут перед началом работы анимации.

                                                                    Ага, нет такого :(
                                                                    0 пользователей читают эту тему (0 гостей и 0 скрытых пользователей)
                                                                    0 пользователей:


                                                                    Рейтинг@Mail.ru
                                                                    [ Script Execution time: 0,1991 ]   [ 17 queries used ]   [ Generated: 12.12.19, 05:30 GMT ]