Плавное появление и закрытие программы
|
|
lorents | Дата: Суббота, 07 Июня 2008, 20:44 | Сообщение # 1 |
Ветеран форума
Группа: Проверенные
Сообщений: 1082
Репутация: 7
Награды: 2
Статус: Offline
| считаю эту тему довольно важной и поэтому решил создать новую тему хотел спросить кто знает как сделать плавное закрытие программу (с плавным появлением я разобрался, данный пример можно скачать mmbuilder.ru)
Image Optimizer - сборник программ для оптимизации картинок без потери качества.
|
|
| |
basme | Дата: Воскресенье, 08 Июня 2008, 11:18 | Сообщение # 2 |
MMB Club
Группа: Проверенные
Сообщений: 358
Репутация: 5
Награды: 2
Статус: Offline
| 1. Качаешь с того же mmbuilder.ru любой плагин, регулирующий прозрачность. 2. Разбираешься, как с ним работать - я сам не качал, но подозреваю, что там и ReadMe, и примерчик какой есть. 3. Применяешь следующую конструкцию: при нажатии кнопки Закрыть сначала плавно увеличиваешь прозрачность проекта до 100, а потом собственно закрываешь его командой Exit(). P.S. Плавно уменьшить прозрачность можно через цикл.
|
|
| |
lorents | Дата: Воскресенье, 08 Июня 2008, 13:44 | Сообщение # 3 |
Ветеран форума
Группа: Проверенные
Сообщений: 1082
Репутация: 7
Награды: 2
Статус: Offline
| basme, скачал модуль AlphaBlend v1.0, полностью разобрался но вот с написанием цикла пошли проблемы подскажите пожалуйста как написать этот цикл (был в справке, на помогло)
Image Optimizer - сборник программ для оптимизации картинок без потери качества.
|
|
| |
basme | Дата: Воскресенье, 08 Июня 2008, 14:32 | Сообщение # 4 |
MMB Club
Группа: Проверенные
Сообщений: 358
Репутация: 5
Награды: 2
Статус: Offline
| Итак, начинаем разбираться. В параметре для запуска модуля есть величина прозрачности. Чем она ниже, тем окно прозрачнее. Нам надо, чтобы эта величина постепенно уменьшилась с 255 до нуля. Допустим, шаг у нас будет 10, этого достаточно. Понятно, что при шаге в 10 величина уменьшится с 255 до 0 за 25,5 шагов, но мы возьмём 25. Пусть величина прозрачности у нас будет k. Начинаем писать скрипт, прежде всего зададим начальное значение k: k=255 Далее пишем сам цикл: For i=1 To 25 k=k-10 Таким образом, при каждом шаге цикла значение прозрачности уменьшается на 10. Теперь переводим это значение в строковый вид: opa$=CHAR(k) ... и формируем параметр: param$='HIDE,WAIT '+'#'+opa$ Затем запускаем модуль: Run("file$","param$") Где file$ - путь к файлу модуля. Завершаем скрипт: Next i И даём команду закрыть программу: Exit() В результате получился такой код: Code k=255 For i=1 To 25 k=k-10 opa$=CHAR(k) param$='HIDE,WAIT '+'#'+opa$ Run("file$","param$") Next i Exit() В результате видим, что после нажатия кнопки окно плавно растворяется в пространстве экрана. P.S. Можно изменять величину шага, таким образом увеличивая или уменьшая время растворения окна.
|
|
| |
lorents | Дата: Воскресенье, 08 Июня 2008, 14:42 | Сообщение # 5 |
Ветеран форума
Группа: Проверенные
Сообщений: 1082
Репутация: 7
Награды: 2
Статус: Offline
| basme, СПАСИБО!
Image Optimizer - сборник программ для оптимизации картинок без потери качества.
|
|
| |
Alex3A | Дата: Воскресенье, 08 Июня 2008, 15:32 | Сообщение # 6 |
Друг клуба ММВ
Группа: Проверенные
Сообщений: 2646
Репутация: 39
Награды: 11
Статус: Offline
| lorents! Ты, по моему, начинаешь не с той стороны, пытаешся что то строить из мегаблоков, которые за частую не совсем соответствуют твоим потребностям, сначала ознакомся и пойми елементарные вещи и понятия - переменные, условные выражения, циклы, состав команд... Вот когда ты сможешь понять как работает тот или иной скрипт, что делает каждый его елемент, у тебя не будут возникать такие вопросы, и все твои напряжения ума будут направлены только в одну сторону - на реализацию нужного тебе алгоритма.
|
|
| |
lorents | Дата: Воскресенье, 08 Июня 2008, 16:02 | Сообщение # 7 |
Ветеран форума
Группа: Проверенные
Сообщений: 1082
Репутация: 7
Награды: 2
Статус: Offline
| Alex3A, ты прав, пойду изучать дальше
Image Optimizer - сборник программ для оптимизации картинок без потери качества.
|
|
| |