it_vse (519823), страница 59

Файл №519823 it_vse (Лекции) 59 страницаit_vse (519823) страница 592013-09-12СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

Текст из файла (страница 59)

Для создания менюнеобходимо:1) Создать строку меню и добавить ее в фрейм.2) Создать меню и добавить его в строку меню.3) Создать команду меню, описать для нее обработчик события и добавить ее в меню.4) Создать вложенные подменю и добавить их в меню.Фрейм может создавать и использовать собственные диалоговые окна. Диалоговое окно создается только наосновании фрейма. Апплет не может непосредственно создать диалоговое окно. Диалоговое окно можетбыть модальным – пока оно не будет закрыто, работа с фреймом будет невозможна. Диалоговое окносоздается на основании класса Dialog. Для создания диалогового окна необходимо:1) Создать диалоговое окно.2) Задать для диалогового окна менеджер расположения.3) Добавить в окно элементы (кнопки, надписи, флажки и т.д.) и описать обработчики событий элементов.4) Подогнать размер диалогового окна под отображаемые элементы (метод pack) и запретить изменениеразмеров окна.5) Отобразить диалоговое окно (метод show).Апплет, выполняющийся в фрейме, может запускаться и без участия браузера – для этого в апплетенеобходимо описать метод main.

Ниже приведен пример апплета, выполняющегося в фрейме, содержащегостроку меню и отображающего диалоговое окно перед началом работы.import java.awt.*;import java.awt.event.*;import com.borland.jbcl.layout.*;public class Frame1 extends Frame {public Frame1( ) {/*пустой конструктор фрейма*/ } Ляхевич А.Г., 2000 - 2002 годpublic static void main(String[] args) {final Frame1 myFrame = new Frame1( );final easy myApplet = new easy();myApplet.init(); myApplet.start();myFrame.setLayout(new XYLayout( ) );myFrame.add(myApplet);myFrame.resize(290,290);// создание фрейма// создание апплета для отображения в фрейме// инициализация и запуск апплета// задание менеджера расположения для фрейма// добавление апплета в фрейм// изменение размера фреймаMenuBar myBar = new MenuBar( );// создание строки менюmyFrame.setMenuBar(myBar);// добавление строки меню в фреймMenu fileMenu = new Menu ("Файл");// создание меню "Файл"myBar.add(fileMenu);// добавление меню "Файл" в строку менюMenuItem open = new MenuItem ("Открыть"); // создание команды "Открыть"open.addActionListener(new java.awt.event.ActionListener() { // обработчик события команды "Открыть"public void actionPerformed(ActionEvent e) {myApplet.info.setText("Вы выбрали Открыть");}});fileMenu.add(open);// добавление команды "Открыть" в меню "Файл"// создание пункта меню, который можно отмечать флажкомfinal CheckboxMenuItem autoSave = new CheckboxMenuItem ("Автосохранение");autoSave.addItemListener(new java.awt.event.ItemListener() { // обработчик события изменения флажкаpublic void itemStateChanged(ItemEvent e) {if (autoSave.getState()){myApplet.info.setText("Автосохранение включено");}if (!autoSave.getState()){myApplet.info.setText("Автосохранение отключено");}}});fileMenu.add(autoSave);// добавление команды меню "Автосохранение"fileMenu.addSeparator();// добавление разделителя менюMenu subMenu = new Menu ("Подменю");// создание подменюfileMenu.add(subMenu);// добавление подменю в меню "Файл"MenuItem Close = new MenuItem ("Закрыть"); // создание команды меню "Закрыть"subMenu.add(Close);// добавление команды "Закрыть" в подменюClose.disable();// отключение команды "Закрыть"Close.addActionListener(new java.awt.event.ActionListener( ) { // обработка выбора команды "Закрыть"public void actionPerformed(ActionEvent e) { myFrame.hide( ); }});myFrame.show();// отображение фрейма// создание диалога.

true указывает на то, что диалог модальныйfinal Dialog myDialog = new Dialog(myFrame, "Заголовок диалога", true);myDialog.setLayout(new FlowLayout());// менеджер расположения для диалогаmyDialog.add(new Label("Нажмите ОК для начала работы с апплетом ...")); // добавление надписиButton OK = new Button("OK");// создание кнопки OKOK.addMouseListener(new java.awt.event.MouseAdapter() { // обработчик события нажатия кнопки OKpublic void mouseClicked(MouseEvent e) {myDialog.hide();} });// закрывает диалогmyDialog.add(OK);// добавление кнопки OK в диалогmyDialog.pack();// "ужимает" диалог до минимально необходимых размеровmyDialog.setResizable(false);// запрет изменения размера окна диалогаmyDialog.show();// отображение диалога}}10.5.

Взаимодействие апплета с сервером (пакет java.net).Язык Java обладает мощными возможностями организациями сетевого взаимодействия по модели клиентсервер, большинство из которых входят в пакет java.net. Это, например, класс Soket, позволяющий организовать соединение по протоколу TCP между различными портами клиента и сервера, а также классDatagramPacket, реализующий протокол UDP, класс MulticastSocket, позволяющий использовать широковещательные пакеты, и многие другие. К сожалению, из-за объемности вопроса, нет возможности изложитьего в лекциях, так что желающим придется проработать его самостоятельно (при рассмотрении вопроса,надо не забывать, что апплету разрешено устанавливать сетевые соединения только с сервером откуда онбыл загружен).

Ниже будет приведено только несколько примеров использования класса URL и Ляхевич А.Г., 2000 - 2002 годURLConnection, которые позволяют получать от сервера (передавать на сервер) информацию по протоколуHTTP.Пример 1. Считывается html – документ по указанному адресу и отображается в апплете:import java.applet.*; import java.awt.*; import java.net.*;try {URL address=new URL ("http://www.microsoft.com");// создание объекта URLAppletContext document = getAppletContext ( );// получение ссылки на контекст апплетаdocument.showDocument (address);// отображение документа с www.microsoft.com}catch (MalformedURLException e) { /* не удалось прочитать */ }Пример 2. На сервер, CGI-приложению, методом POST, посылается строка ПРОВЕРКА, и считываетсяответ сервера – одна строка.try {URL address = new URL ("http://somewhere.com/cgi-bin/proga"); // создание объекта URLURLConnection soedinenie = address.openConnection( ); /* более удобный объекта URLConnection обеспечивает не посимвольный а построчный ввод */PrintStream out = new PrintStream (soedinenie.getOutputStream ( ) ); // объекта out для записи данныхDataInputStream in = new DataInputStream (soedinenie.getInputStream ( ) ); // объект in для чтения данныхout.println("string= ПРОВЕРКА ");// отправка строки на серверString otvet = in.readLine ( );// чтение строки с сервера} catch (MalformedURLException e1) {}catch (java.io.IOException e2) {} // обработка исключений* Чтобы воспользоваться методом POST, достаточно записать данные в объект out прежде, чем выполнитьчтение из объекта in.

Если же сначала считать данные из input, то будет выполнен метод GET, ипоследующие попытки записи данных в output приведут к ошибке.10.6. Параметры, конфигурирование апплета.В апплетах могут использоваться параметры, задаваемые пользователем при запуске апплета. Это чем-тонапоминает указание аргументов в командной строке, при запуске DOS программ.

Параметры задаются припомощи тэга <PARAM>, находящегося внутри тэгов <APPLET> </APPLET>, определяющих апплет. Вприведенном ниже примере апплету передаются параметры stroka (отображаемая на экране строка) иfont_size (размер шрифта):<html> <body> <Applet code="AppletName.class" width=350 height=200 name="AppletName"><PARAM NAME=stroka VALUE="Отображаемая строка"><PARAM NAME=font_size VALUE=72></Applet> </body></html>Переданные апплету параметры можно прочитать из апплета при помощи метода GetParameter ( ).

Пример:import java.awt.*;import java.Applet.*;public class AppletName extends Applet {String str;public void init ( ) {String s; str = getParameter("stroka"); \\ считывание параметра strokas = getParameter("font_size"); \\ считывание параметра font_sizeint FontSize = Integer.parseInt(s); \\ преобразование параметра font_size в число типа intFont font = new Font("TimesRoman", Font.BOLD, FontSize);setFont(font); \\ установление параметров шрифта}public void paint(Graphics g) { g.drawstring (str, 100, 100); }}Заключение:В лекции были рассмотрены только базовые конструкции языка Java. Не рассмотрен пакет java.io,позволяющий организовать работу с файлами (апплетам запрещены чтение и запись на диск).

Нерассмотрена работа с потоками – мощная возможность, позволяющая реализовать параллельное выполнениеучастков программы. Не рассмотрен криптографический интерфейс Java Security API, позволяющий легкореализовать надежные криптографические алгоритмы (шифрование данных). Не рассмотрено взаимодействие с менеджером безопасности java. Не рассмотрена возможность динамической загрузки классов,сервлеты Java (апплеты, которые выполняются на сервере, интегрируясь с ним), взаимодействие Java cдругими языками, интерфейс Java Beans API (создание межплатформенных подключаемых модулей,представляющих собой законченные объекты из которых можно "собирать" программы и пользовательскийинтерфейс), использование Java для доступа к базам данных и многое другое.

Однако хочется надеяться, что Ляхевич А.Г., 2000 - 2002 годполученные базовые знания помогут вам легко читать Java-программы и самостоятельно разобраться в этихвопросах. Ляхевич А.Г., 2000 - 2002 годЛекция 12. Язык JavaScriptJavaScript - язык для составления скриптов, встраиваемых в Web-страницы для придания им привлекательного вида. В отличие от VBScript, который поддерживается только в Internet Explorer, JavaScriptподдерживается большинством популярных браузеров. JavaScript - это не Java ! Язык Java был разработанкомпанией Sun Microsistems, а JavaScript – фирмой Netscape (первоначально этот продукт Netscapeназывался LiveScript и только после бума Java, фирма Netscape купила у Sun лицензию и переименовалосвое детище в JavaScript).

Хотя синтаксис Java и JavaScript во многом схож, однако возможности иназначение языков разные. Если апплеты Java представляют собой независимые программы с широкойгаммой возможностей, встраиваемые в HTML-страницу, то скрипты JavaScript в основном нацелены наиспользование существующей объектной модели Web-браузера, а также позволяют расширять ее, создаваясобственные объекты. Программы на Java представляют собой байт-код, а программы на JavaScriptнепосредственно включаются в Web-страницу в виде исходного текста.

Таким образом, Java – это язык длянаписания программ, а JavaScript – это язык для написания скриптов управления HTML-страницами.Для включения программ на JavaScript в HTML-страницу необходимы те же теги <SCRIPT></SCRIPT>, что и для программ на VBScript, выглядящие примерно так:<SCRIPT LANGUAGE="JavaScript"><!-alert("Приветик");--></SCRIPT>В остальном, принцип размещения и написания JavaScript программ похож на рассмотренный ранее дляVBScript – тот же объектно-ориентированный подход, то же манипулирование объектами Window,Document, Form и др. через их свойства, методы и события. Единственное отличие – это синтаксис,унаследованный от Java.

В лекциях не будет уделяться много внимания синтаксису JavaScript, заисключением случаев, когда он отличен от синтаксиса Java. Основной упор будет сделан на решение рядазадач (создание анимации, управление слоями и др.). Поэтому рекомендую перечитать лекции по Java, атакже лекции по VBScript и HTML.Существует четыре версии JavaScript.• JavaScript 1.0. Первая версия языка, поддерживаемая Internet Explorer 3.0 и Netscape Navigator 2.0.• JavaScript 1.1. Поддерживается Netscape Navigator 3.0 и Internet Explorer 4.0 (почти полностью).• JavaScript 1.2. Поддерживается Netscape Navigator 4.0 и Internet Explorer 4.0 (частично).• JavaScript 1.3. Поддерживается Netscape Navigator 4.5.В дескрипторе <SCRIPT> можно указывать номер версии JavaScript. Указание версии JavaScriptпредотвращает попытки броузеров старых версий выполнить сценарии, созданные в новых версияхJavaScript.

Характеристики

Тип файла
PDF-файл
Размер
6 Mb
Материал
Тип материала
Высшее учебное заведение

Список файлов лекций

Свежие статьи
Популярно сейчас
Как Вы думаете, сколько людей до Вас делали точно такое же задание? 99% студентов выполняют точно такие же задания, как и их предшественники год назад. Найдите нужный учебный материал на СтудИзбе!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
6374
Авторов
на СтудИзбе
309
Средний доход
с одного платного файла
Обучение Подробнее