Веб-браузер(WebBrowser) своими руками

В одном из своих материалов мы сказали, что веб-браузер сделать легко. И сейчас мы это продемонстрируем в Borland C++ Builder v.6.0.

Без паники, в этом материале, свой движок писать не придется, мы воспользуемся готовым. От Internet Explorer.

Создаем форму распологаем на ней элемент CppWebBrowser с вкладки Internet. У нас он самый крайний справа. И добавим кнопку Button, и Edit, чтобы вводить адрес. Получаем подобное:

Браузер своими руками

Рисунок 1.

В большом белом прямоугольнике и будет появлятся страница сайта. Но сначала опишем события по клику на кнопке или можно в событии onEnter у Edit`а.

CppWebBrowser1->Navigate(StringToOleStr(Edit1->Text));

Кратко получилось. Но больше-то ничего и не надо. Повторимся, больше НИЧЕГО НЕ НАДО для начала.

Теперь добавим несколько кнопок которые мы привыкли видеть в современных браузерах. Это будут кнопки - Назад, Вперед, Домашняя страница, Остановить, Обновить.

Хотя если кто-то привык обходится без кнопок, то горячие клавиши действуют без дополнительных манипуляций. Например, по F5 - обновляется страница. Итак получили что-то вроде этого:

Браузер своими руками

Рисунок 2.

Код для кнопок приведен несколькими строками, но имей ввиду, на каждую кнопку приходится только одна(!) строка. Одна кнопка = одна функция. На всякий случай мы сделали пояснения.

CppWebBrowser1->GoBack(); //кнопка Назад
CppWebBrowser1->GoForward(); //кнопка Вперед
CppWebBrowser1->Stop(); //кнопка Стоп
CppWebBrowser1->Refresh(); //кнопка Обновить
CppWebBrowser1->GoHome(); //кнопка Домашняя страница

Примечание: Автор не удосужился объяснить куда ведет кнопка Домашняя страница. А ведет она на ту которая прописана в свойствах твоего Internet Explorer в качестве домашней. Мелочь, но зато ты понял на 100%.

Исходный код и скомпилированный вариант получившегося ищи тут.

Теперь заменим компонент Edit на выпадающий список ComboBox, и будем записывать в него недавно открытые адреса.

Имеем:

Браузер своими руками

Рисунок 3.

Добавляем совсем немного строчек в обработчик события onKeyDown, элемента ComboBox:

if(Key==VK_RETURN)
{
CppWebBrowser1->Navigate(StringToOleStr(ComboBox1->Text)); //Загружаем страницы
ComboBox1->Items->Add(ComboBox1->Text); //Добавляем использованные адреса
}

Исходный код и скомпилированный вариант получившегося ищи тут.

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

Для себя мы уже нарисовали план развития этой задумки. Разумеется мы не планируем соревноватся с популярными веб-браузерами, нам просто интересно как это все устроено, пускай даже не на самописном ядре, а уже на готовом.

А если говорить серьезно - просто хочется спать;)




Ссылки:

К содержанию

© Copyright 2004-2017 - CMS Made Simple
Сайт работает на CMS Made Simple version 1.4.1

© Все печеньки Break-people.ru принадлежат авторам проекта.

Яндекс цитирования Рейтинг@Mail.ru Яндекс.Метрика