][-Desktop

FlashMailer

Спецвыпуск Xakep, номер #023, стр. 023-074-1


ilich (ilich@winfo.org)

Как часто, парень, ты пользуешься мылом? А как часто при этом ты пишешь по одним и тем же адресам? И как ты это делаешь? Дай-ка угадаю, ты каждый раз ручками запускаешь какую-нибудь прогу для мыла и потом опять же ручками набиваешь там чей-то мыльник :). Ну, в крайнем случае лазаешь по адресной книге. Не скучно ли? Я так и знал! Надо бы этот процесс автоматизировать. Давай грузи наш флешевский ролик для обоев, будем ваять mailer. Загрузил? Ну, тогда поехали.

СЕСТРА, НАРКОЗ!

Для начала стоит поиметь побольше свободного места. Дави Ctrl+M и ставь высоту видеофрагмента 700 pt.

Заходи сразу в редактирование символа "Main". Нарисуй текстовое поле шириной 500 pt. В панели Параметры Текста для этой строки все должно быть так: тип - Dynamic Text; Single line; имя переменной - "text"; напротив Selectable (Выбираемый) флажок убран. Дави F8 и загони эту строку в кнопку с именем "B - Link". В этой кнопке поставь строку так, чтобы центр кнопки был в левом верхнем углу строки. Первый кадр растяни еще на три и нарисуй в четвертом кадре прямоугольник так, чтобы он полностью закрывал строку (у меня при размере шрифта в строке 20 прямоугольник 500 на 30).

Кнопку "B - Link" помещаем (выходи из ее редактирования, выделяй ее и дави F8) в клип "С - List" и в нем располагаем ее так же, как до этого ставили строку в ней самой, т.е. центр клипа в левом верхнем углу кнопки. Все это позиционирование делается для того, чтобы потом при помощи ActionScript можно было клип "С - List" располагать на экране предельно точно. Для кнопки мути скрипт (надави на ней правой половинкой мышки и выбирай в выпавшем меню пункт Операции или Actions):

on (press) {

getURL ("mailto:"+text);

}

Не очень трудно догадаться, что переменная "text" будет содержать чей-то E-mail адрес :).

Короче говоря, при нажатии "B - Link" вызовет твое почтовое приложение по умолчанию и в поле "кому" в новом письме поставит мыльник из переменной.

КТО НЕ РИСУЕТ, ТОТ НЕ...

Необходимо сделать маленькую, но красивую и удобную кнопочку, которая впоследствии будет вызывать меню с мылами. Советую особо не изощряться с рисованием, а нарисовать простую рельефную пимпу. Эффект объемности достигается при помощи таких типов заливок, как Radial Gradient и Linear Gradient (см. панель Заливка или Fill), и модификатора Gradient Transformation инструмента Paint Bucket (соответственно, модификатор Трансформация Заливки инструмента Заливка в русском Flash'e). Нарисуй кружок 40 пикселей в диаметре. Преобразуй его в кнопку "B - MailStart". Поиздевайся над его заливкой и сделай ее выпуклой в первом и втором кадрах (красивее выглядит, когда эти два кадра чуть-чуть отличаются, например, толщиной или цветом контура кружка) и вогнутой в третьем. Главное, не забывай делать у кнопок кадр hit. У одного моего знакомого недавно случилась беда: сделал кнопку, сделал ее красивую и все такое, но из-за отсутствия чего-либо в четвертом кадре она просто-напросто не реагировала ни на какие движения мыши. Обидно было.

Не менее необходимо также сделать кнопку для закрытия меню. Форму и размер этой кнопки выбираем, соображая при этом, где мы эту кнопку разместим. Не забывай также, что на экране появится еще меню мыльников. Давай забацаем ее горизонтально, дабы потом разместить над меню. Рисуй длинный прямоугольник с выразительным крестиком справа, пиши на нем "Close" и делай из всего из этого символ кнопки "B - MailClose". Ты не думай, что я над тобой издеваюсь, придумывая какие-то странные имена для символов (имена кнопок начинаются с "B", имена клипов - с "C"). Просто, по-моему, гораздо удобнее и быстрее работать с библиотекой во Flash'e, когда все символы упорядочены по функциональному признаку. У нас уже их там достаточно много, чтобы глаза сбились в кучу, а с мозгом произошел полный коллапс при попытке отыскать нужный символ без должной сортировки. Советую также соответственно переименовать все старые символы, имена которым давались еще в первых сеансах, или распихать их по папочкам (глаза тогда не разбегаются и функционируют согласно инструкции).

Содержание  Вперед на стр. 023-074-2