Работая над заданием прошлой лекции, Вы могли обратить внимание, на необходимость прокрутки больших сообщений на дисплее пейджера. Конечно, можно просто щелкнуть мышкой на нужном текстовом поле и нажимаю кнопки перемещения курсора, прокрутить текст. Но, часто приходится отключать дос-туп пользователя к тексту, блокировать выделение и копирование .
Тем не менее, необходимо обеспечить комфорт для пользователя при про-смотре Вашего сайта. Создавая любой проект, помните, что человек может про-сто не догадываться о тех возможностях, которые Вы использовали. Самый простой способ обеспечить прокрутку текста - создать клип с этим проплы-вающим текстом (Вы уже можете без проблем это сделать). Но у посетителя Вашего сайта есть полное право, требовать от вашей работы удобства. Основ-ное правило, которым следует руководствоваться при создании собственного сайта: - "Все, что Вы делаете, Вы делаете не для себя, а для тех, кто будет смот-реть ваше произведение и если Вы не можете обеспечить простоты и удобства для клиента, то это Ваши проблемы и никогда не нужно обвинять клиента в глупости".
Мы все привыкли к стереотипам. Если на экране есть текст непомещаю-щийся в отведенное ему окно, то мы неосознанно двигаем мышь к правому краю в поисках полосы прокрутки. Если мы видим кнопку, то нам хочется на нее нажать и посмотреть, что будет. В случае с текстом необходимо преду-смотреть его прокрутку по желанию зрителя, а если есть кнопка, даже непохо-жая на обычную кнопку, ее необходимо располагать в ожидаемом месте. Так Вы избежите ситуации, в которой, показывая кому-то, белый лист бумаги буде-те утверждать, что на нем нарисован белый медведь, которому срочно понадо-билось зайти во-о-он за тот белый айсберг. :-)
Как же заставить текст в поле перемещаться в зависимости от нажатой кнопки? У текстовых полей есть два замечательных параметра: scroll - опреде-ляет номер верхней строки в поле maxscroll - вычисляет номер последней верх-ней строки, т.е. номер строки, которая будет верхней в поле после прокрутки всего текста
Применяя оба эти параметра, Вы можете без проблем организовать догрузку следующих текстовых блоков по мере чтения материала или любые другие эффекты.
А, теперь усовершенствуем пейджеры из прошлого задания. Предполо-жим, что у нас есть пейджер с текстовым полем "pole" в качестве дисплея, ко-торое может вместить в себя 2-3 строки: надеюсь, при создании текстового по-ля Вы не забыли включить режим многострочности и переноса по словам? До-бавим к нему две кнопки прокрутки. Для одной из них зададим прокрутку тек-ста вниз, т.е. мы будем увеличивать значение номера верхней строки для свой-ства scroll, а второй кнопкой - его уменьшать. Скрипт для первой кнопки, в на-шем случае, будет выглядеть так: On (Release) Set Variable: "pole.scroll" = pole.scroll + 1 End On
Осталось, назначить второй кнопке аналогичный скрипт, но уменьшающий значение "pole.scroll".
Не станем останавливаться на достигнутом, и усовершенствуем терминал. До этого, для оправки сообщения на нужный пейджер, Вы нажимали на соот-ветствующую кнопку. Но ведь на настоящих пейджинговых станциях нет пуль-тов с перечнем всех номеров абонентов. Не должно быть их и у нас! Добавим к терминалу еще одно редактируемое текстовое поле, в которое будем вводить номер нужного пейджера и отправлять сообщение нажатием на одну-единственную кнопку. Если с окошком для номера у нас проблем не должно возникнуть, то как определить на какой же пейджер оправлять сообщение, даже если введен его номер? В этом нам поможет действие "If".
If - условный оператор, определяющий последовательность действий в за-висимости от истинности заданного условия. Полностью выглядит следующим образом: If (условие) Действие (одно или несколько), если условие верно. Else Если нет, то выполняется данное действие End If
В нашей жизни мы постоянно стоим перед выбором, что сделать в кон-кретной ситуации, что ответить на услышанное, читать этот выпуск дальше или удалить его с компьютера и т.д. Типичным примером реализации алгоритма выбора является фрагмент сказки знакомой нам с самого раннего детства: …"И остановился Иван царевич (Илья Муромец, добрый молодец и др.) перед кам-нем, а на камне том надпись; на право пойдешь - деньги найдешь, налево пой-дешь - красну девицу встретишь, а прямо пойдешь - голова с плеч".
На ActionScript это можно записать так: If (Ivan eq "Right") Go to and Stop ("Money") Else If (Ivan eq "Left") Go to and Stop ("PrettyGirl") Else If (Ivan eq "Forward") Go to and Stop ("Death") Else Go to and Play ("GoBack") End If
Обратите внимание на используемый символьный оператор "eq", который мы применяем в данном случае для проверки переменной "Ivan". Если бы мы записали: If (Ivan = "Right") это было бы неправильно, т.к. мы в данном случае проверяем переменную на соответствие символьному значению. Else If исполь-зуется, если необходимо проверить переменную на соответствие нескольким значениям. Включается "Else" или "Else If" в действие "If", следующим обра-зом: Включите действие "If" После введения условия проверки и действия вы-делите строку с действием "If" Нажмите кнопку "Add Else/Else If clause" Перед завершающей командой "End If" появится "Else", когда вы выделите строку "Else", то сможете изменить ее на "Else If" Теперь можно легко проверить какой номер введен и отправить сообщение на нужный пейджер. Попробуйте, сделать это самостоятельно.
Использование условного оператора "If" дает большие возможности в реа-лизации задуманных проектов. Кроме решения чисто технических вопросов при работе над проектом, условные операторы можно применить для большей интерактивности сайтов. Теперь, без сложных запросов cgi и перепроверки ад-министратором сервера, Вы можете организовать "вход по пропускам", т.е. по паролю к различным частям Вашего сайта. Конечно, это не обеспечит полной защиты данных html страниц, но обеспечить запрет перехода на следующие сцены посторонним, вполне возможно. Элементарнейшим образом решаются вопросы создания сайтов по прохождению различного рода тестирования и т.д. без знания JavaScript.
Домашняя задание: До сих пор, Вы работали по моему сценарию, но на этот раз я решил не сдерживать Вашу фантазию. Принимаются любые Ваши работы, но только при условии, если они содержат материал последних двух выпусков: Необходимо придумать собственный сценарий и осуществить его. При реализации проекта, обязательное использование ActionScript - действий Set Variable, If и режима ручной прокрутки текста. Желаю удачи!
В завершении лекции, еще несколько слов: Создавая любой проект и ис-пользуя при этом ActionScript, стремитесь максимально оптимизировать и уни-версализировать код скрипта. Есть простое правило, определяющее уровень ра-боты любого программиста - "код программы хорош, только в том случае если его можно использовать без переделки в другой программе". ActionScript не яв-ляется исключением. Старайтесь писать скрипт, так чтобы при изменении про-екта не приходилось заново переписывать все подпрограммы. Например, Вы написали скрипт, определяющий введенный номер и посылающий сообщение на нужный пейджер. Но вот вы решили добавить еще пару пейджеров, Вам придется дописывать новые строки "Else If", хотя можно всю эту подпрограмму заменить одной единственной строкой и в дальнейшем Вы сможете добавлять или удалять пейджеры без изменения самого скрипта. Разумеется, проект с пейджерами приведен только в качестве примера, но уверен смысл необходи-мости создания универсальных модулей Вам ясен.
Кстати, кто из Вас догадал-ся, как создать универсальный код для отправки сообщения по нужному номе-ру? Подчеркиваю, что все необходимые знания для этого Вы уже имеете!
Комментариев нет:
Отправить комментарий