Главная » 2014 » Февраль » 14 » Delphi – Курсовая работа на тему «Браузер на основе
09:08

Delphi – Курсовая работа на тему «Браузер на основе





Delphi – Курсовая работа на тему «Браузер на основе Internet Explorer». Пишем Web браузер на Delphi.

Автор admin, 25th Февраль, 2011

Доброго времни суток.

Перед вам моя первая курсовая работа по программированию, на тему: «Браузер на основе Internet Explorer».

То есть написание полноценного браузера на Delphi, на ядре Internet Explorer.

Ниже представлено содержимое курсовой работы.

КУРСОВАЯ РАБОТА

по дисциплине «Программирование на языке высокого уровня»

на тему

«Браузер на основе Internet Explorer»

Постановка задачи.

Написать программу (браузер на основе Internet Explorer) на языке высокого уровня (Borland Delphi), предназначенную для запроса веб-страниц (преимущественно из Сети), их обработки, вывода и перехода от одной страницы к другой. Браузер должен отвечать первостепенным потребностям пользователя, обладать интуитивно понятным интерфейсом с необходимым для работы набором функций.

Описание решения

Windows Internet Explorer (ранее — Microsoft Internet Explorer или просто Internet Explorer, сокращённо MSIE или IE) — серия браузеров, разрабатываемая корпорацией Microsoft с 1995 года. Входит в комплект операционных систем семейства Windows. Именно по этому, занимает первое место по числу пользователей (рыночная доля в апреле 2010 года — 59,95 %, в сентябре — 49,87 % (по данным GlobalStats)).

Браузер на основе Internet Explorer, разрабатываемый в Borland Delphi, базируется на компоненте “WebBrowser”, если версия Delphi меньше, чем пятая, то этого компонента может и не быть. Он может отсутствовать, и если при установке не были установлены интернет-компоненты (по умолчанию они ставятся). Именно благодаря компоненту “WebBrowser”, становится возможным разработка программного обеспечения для просмотра веб-сайтов на основе Internet Explorer.

Кроме того, компонент “WebBrowser” позволяет нам использовать дополнительные функции, необходимые для полноценной работы в сети Internet, такие как:

- “обновить” (обновление текущей страницы)

- “назад” (открытие предыдущей страницы)

- “вперед” (открытие следующей страницы, если перемещались назад)

- “стоп” (остановка загрузки веб-страницы)

- “печать” (печать содержимого страницы на принтере)

- “открыть” (открыть файл на жестком диске).

Для удобной работы пользователя, нужно добавить “строку состояния”, которая информирует пользователя о состоянии работы браузера, а также “индикатор загрузки”, информирующий пользователя о состоянии загрузки веб-страницы.

Кроме этого, необходимо сделать окошко для ввода адреса (домена) Интернет ресурса, и кнопку, после нажатия на которую будет происходить переход на введенный пользователем адрес.

Для полноценного использования браузера в сети Интернет необходимы устройства ввода и вывода (комплектация зависит от целей работы):

- компьютерная мышь или тачпад.

- экранная или обычная клавиатура.

- монитор.

- колонки/наушники (опционально).

А так же доступ в сеть Интернет, и установленная на компьютере операционная система Windows, так как создаваемый браузер создаётся именно для этой операционной системы.

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

Плюсом разработки браузера на основе Internet Explorer является то, что браузер будет именно таким, каким его захочет сделать разработчик, включая дизайн и наличие функций необходимых для конкретных целей.

Минус браузера заключается в том, что он наследует все “болячки” от Internet Explorer (не совершенность системы безопасности, уровень производительности, скорость загрузки веб-страниц и т.д).

Описание программы

Описание модулей:

uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, ToolWin, ComCtrls, OleCtrls, SHDocVw, ShellAPI, ImgList, ExtCtrls;

Здесь описаны стандартные модули Delphi, необходимые для написания браузера. Браузер разрабатывается для операционной системы Windows, поэтому наследует набор стандартных функций.

Описание процедур (англ. Procedure):

1) procedure Button1Click;

При нажатии на Button1 (кнопка «GO!»), происходит переход по ссылке, введенной пользователем в поле Edit1 (Окошко для ввода адреса веб-страницы).

2) procedure Edit1KeyDown

Процедура отвечающая за нажимаемые пользователем клавиши.

Если код нажатой клавиши равен Enter, то

Выполнить процедуру Button1Click.

Таким образом, эта процедура позволяет перейти по адресу, заданному пользователем. В следствии чего происходит открытие веб-страницы (procedure Button1Click).

3) procedure ToolButton4Click

При нажатии на Button4 (кнопка «Обновить»), происходит обновление открытой веб-страницы.

4) procedure ToolButton5Click

При нажатии на Button5 (кнопка «Стоп»), происходит остановка загрузки открываемой веб-страницы.

5) procedure ToolButton2Click

При нажатии на Button2 (кнопка «Назад»), открывается предыдущая загруженная веб-страница (если таковая была).

6) procedure ToolButton3Click

При нажатии на Button3 (кнопка «Вперед»), открывается следующая загруженная веб-страница (если перемещались «назад»).

7) procedure ToolButton1Click

Компонент “OpenDialog1” позволяет открыть в окне браузера выбранный пользователем файл на жестком диске.

8 ) procedure ToolButton6Click

Эта процедура позволяет распечатать содержимое текущей веб-страницы, в ней посылается команда через OLE к ядру IE.

9) procedure WebBrowser1ProgressChange

Процедура позволяет получать данные о состоянии загрузки веб-страницы по средствам “индикатора загрузки”, здесь мы созданному ProgressBar1 (индикатор загрузки) присваиваем максимальное значение (ProgressMax) и текущее значение (Progress).

10) procedure WebBrowser1StatusTextChange

Здесь мы присваиваем переменную «Text» (в ней хранится текст подсказки) в StatusBar1. Это позволяет видеть подсказки в строке состояния.

11) procedure WebBrowser1NewWindow2

Данная процедура, выполняется при открытии ссылки в новом окне, открывает новое окно браузера, с “новой” ссылкой.

Запрещаем запуск обозревателя IE, после чего запускаем себя еще раз, только указав в параметрах ссылку на новое окно.

12) procedure TEasyBrowser.FormShow(Sender: TObject);

Процедура выполняется при открытии ссылки в новом окне, в частности отвечает за создание нового окна.

13) procedure WebBrowser1TitleChange

Данная процедура отвечает за изменение текста, который содержится на странице в дескрипторе title.

Описание глобальных переменных:

S:string;

В строчной переменной S хранится ссылка, которая должна открываться в новом окне.

EasyBrowser: TEasyBrowser;

Переменная отвечающая за правильное функционирование компонента WebBrowser в некоторых процедурах.

Описание используемых компонент:

StatusBar1: TStatusBar; – панель статуса.

ToolBar1: TToolBar; – панель, на которой расположены Edit1 и Button1.

Edit1: TEdit; – поле для ввода ссылки.

Button1: TButton; – кнопка “GO!”

WebBrowser1:TWebBrowser; – необходимый для работы браузера компонент.

CoolBar1: TCoolBar; – панель, на которой располагаются панели ToolBar.

ToolBar2: TToolBar; – панель, располагаемая на CoolBar1.

ToolButton1: TToolButton; – кнопка “Открыть”.

ToolButton2: TToolButton; – кнопка “Назад”.

ToolButton3: TToolButton; – кнопка “Вперед”.

ToolButton4: TToolButton; – кнопка “Обновить”.

ToolButton5: TToolButton; – кнопка “Стоп”.

OpenDialog1: TOpenDialog; – необходимо для открытия файлов.

ToolButton6: TToolButton; – кнопка “Печать”.

ProgressBar1: TProgressBar; – “индикатор загрузки”.

ImageList1: TImageList; – Картинки для кнопок на ToolBar2.

Причем, ToolBar1 и ToolBar2 располагаются на СoolBar1.

Руководство пользователя.

Запустите EasyBrowser.exe, перед вами откроется окошко (Рис. 1), программа предназначена для запроса веб-страниц (преимущественно из Сети), их обработки, вывода и перехода от одной страницы к другой.

Браузер обладает интуитивно понятным интерфейсом, позволяет полноценно работать в сети Интернет.

Рис. 1

1 – Кнопка “Открыть” (открыть в браузере файл на жестком диске).

2 – Кнопка “Назад” (открытие предыдущей страницы).

3 – Кнопка “Вперед” (открытие следующей страницы, если перемещались назад).

4 – Кнопка “Обновить” (обновление текущей веб-страницы).

5 – Кнопка “Стоп” (остановка загрузки веб-страницы).

6 – Кнопка “Печать” (печать содержимого страницы на принтере).

7 – Окошко для ввода адреса веб-страницы.

8 – Кнопка “GO” (переход по введенному адресу).

9 – Поле для отображения текущей веб-страницы.

Если пользователь введет ссылку Интернет ресурса в окошко для ввода адреса веб-страницы (7), то в поле для отображения текущей веб-страницы откроется содержимое данного Интернет ресурса.

Рис.2

1 – “индикатор загрузки”, информирующий пользователя о состоянии загрузки веб-страницы.

2 – “строка состояния”, информирует пользователя о состоянии работы браузера (выполняемое действие).

Таким образом, введя адрес Интернет ресурса http://www.yandex.ru в окошко для ввода адреса веб-страницы (7), в поле для отображения текущей веб-страницы открылось содержимое данного сайта (Рис. 2).

При нажатии на кнопку “открыть”, откроется окно (Рис. 3), и пользователь может выбрать необходимый файл, располагающийся на жестком диске или съемном носителе, для его открытия в окне браузера.

Рис. 3

Программа написана для работы в ОС Windows, поэтому обладает набором стандартных функций: “свернуть”, “развернуть”, “закрыть” (Рис.4).

Рис.4

Для того что бы распечатать содержимое открытой страницы, необходимо нажать на кнопку “Печать”. После чего, откроется окошко (Рис 4.) настройки печати (выбор принтера, настройка, число копий, диапазон страницы и т.д).Рис.5

аким образом, пользователь может распечатать на бумагу содержимое открытой веб-страницы или файла.

Если на открытой веб-странице нажать на любую ссылку правой кнопкой мыши, то появится окошко (Рис. 6), которое позволяет пользователю выбрать необходимое действие.

Рис.6

Это позволяет пользователю, узнать необходимую информацию, например о текущем протоколе, URL адресе и т.д (Рис. 7).

Рис 7.

Кроме того, браузер поддерживает кириллические домены (начало открытой регистрации которых, началось 11 ноября 2010 года).

При открытии ссылки в новом окне (Shift + левая кнопка мыши или щелкнуть на ссылку правой кнопкой мыши – “Открыть в новом окне”), открывается новое окно браузера (Рис. 8), и происходит открытие ссылки, которая должна открываться в новом окне. Причем, каждое новое открытое окно, будет иметь свой собственный процесс.

Рис.8

Обобщенная блок схема.

Заключение.

В результате разработки, получен полноценный браузер, с помощью которого можно беспрепятственно посещать различные Интернет ресурсы. Плюсом написания браузера на Delphi является то, что основной упор делается на максимальном использовании кода. Это позволяет разработчикам строить приложения весьма быстро из заранее подготовленных объектов, а так же дает им возможность создавать свои собственные объекты для среды Delphi. Никаких ограничений по типам объектов, которые могут создавать разработчики, не существует. Я считаю создание браузера очень эффективным в образовательном плане, так как при его написании возникал ряд трудностей, преодолевая которые развиваются необходимые качества для программиста, такие как упорство, логика, умение находить оптимальное решение проблемы. Дизайн и внешний облик браузера и функционал целиком и полностью зависит от разработчика, поэтому реализация данного проекта позволяет развивать творческое мышление и повысить мотивацию к обучению, овладеть методами научного познания.

К сожалению, разработка браузера на основе Internet Explorer не перспективна в настоящее время, так как сам по себе браузер Internet Explorer имеет достаточно большое количество минусов (в частности серьезные проблемы в системе безопасности, скорости работы, производительности, функциональности, наличии уязвимостей), и уступает по многим параметрам аналогам (таким как Opera, Mozilla FireFox, Safari, Google Chrome и другим). Написание же браузера на собственном, уникальном ядре задача очень не простая и требует огромных умственных, материальных и временных затрат.

Список литературы

1. Г.В.Галисеев, «Программирование в среде Delphi 7. Самоучитель», М., 2004 год.

2. В.В.Фаронов, «Delphi 6. учебный курс», издатель С.В.Малгачёва, 2001 год.

3. В. В. Шупрута «Delphi 2005. Учимся программировать»

4. Справочная система Delphi.

На этом собственно и всё :)

Специально для берлоги ;)

Вы можете оставить отзыв, или трекбек со своего сайта.
Просмотров: 8636 | Добавил: bhopenered | Рейтинг: 0.0/0
Всего комментариев: 0


Сделать бесплатный сайт с uCoz
Copyright MyCorp © 2024