Студопедия.Орг Главная | Случайная страница | Контакты | Мы поможем в написании вашей работы!  
 

WEB-браузер



Для разработки собственного WEB-браузера используется набор компонентов "Microsoft Internet Controls". Это значит, что Ваш браузер будет иметь те же достоинства и недостатки, что и у стандартного Internet Explorer. Единственное, что может успокоить - так это то, что интерфейс может быть таким, каким Вы захотите, потому что сделан Вашими руками.

Создание браузера заключается в следующих шагов:

1. Создайте новый проект ("File" -> "New Application") и сразу измените заголовок и иконку.

2. Установите на форму компонент "WebBrowser" (он находится на закладке "Internet" или "ActiveX") - у Вас появится белый квадрат с именем WebBrowser1.

3. Расположите на форме также компонент "CoolBar", который находится на закладке "Win32" палитры компонентов. Это панелька, которая должна выровняться по верхнему краю формы.

4. Выделите WebBrowser1 и перейдите в Object Inspector. Щелкните по свойству "Align" и в выпадающем списке выберите "alClient". "WebBrowser" должен растянуться на все свободное место формы. В результате Вы увидите нечто похожее на рис. 1.

Рис. 1 – Окно WEB-браузера
 

5. Установите на CoolBar1 панель "ToolBar" из закладки "Win32" и "ComboBox" из закладки "Standart" палитры компонентов (Все это Вы должны расположить именно внутри CoolBar1). После этого нужно выделить CoolBar1 и перейти в ObjectInspector. Здесь необходимо изменить строку "AutoSize" на "true" (по умолчанию она "false").

6. Выделите ComboBox1 (выпадающий список) и перейдите в ObjectInspector. Здесь необходимо перейти на закладку "Events", выбрать строку "OnKeyDown" и ввести имя процедуру (двойное нажатие кнопки мыши). Delphi создаст процедуру, которая будет вызываться каждый раз, когда Вы будете вводить какую-нибудь букву в "ComboBox". Здесь Вы должны написать следующее:

procedure TForm1.ComboBox1KeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
if Key= VK_RETURN then
WebBrowser1.Navigate(ComboBox1.Text);
end;

7. Запустите программу, введите какой-нибудь адрес в строку ComboBox и нажмите клавишу Enter Если вы правильно ввели адрес, то в WebBrowser1 через несколько минут должен появиться указанная страница.

Введение дополнительных возможностей в WEB-браузер.

Выберите ToolBar1 и перейдите в ObjectInspector. Здесь нужно изменить свойства "AutoSize", "ShowCaption" и "Flat" на "true" (все они по умолчанию равны false). Нажмите правую кнопку мыши на ToolBar1 и из появившегося меню выберите пункт "New Button". На ToolBar1 должна появиться новая кнопка с именем "ToolButton1". Выделите ее и в ObjectInspector-е поменяйте свойство Caption на "Открыть". Создайте еще насколько кнопок с заголовками: Назад, Вперед, Стоять, Обновить и Печать. Результат должен быть похож на рис. 2.

Рис. 2 – Окно WEB-браузера с дополнительными кнопками
 

Установите также на форму "OpenDialog" из закладки "Dialogs" палитры компонентов.

Теперь дважды кликните по кнопке "Открыть", и Delphi автоматически создаст процедуру, которая будет вызываться при нажатии этой кнопки. В этой процедуре нужно написать следующее:

procedure TForm1.ToolButton1Click(Sender: TObject);
begin
if OpenDialog1.Execute then
begin
WebBrowser1.Navigate(OpenDialog1.FileName);
ComboBox1.Text:=OpenDialog1.FileName;
end;
end;

Теперь можно запустить программу и открыть с помощью этой кнопки любой файл на диске.

Для работы кнопки "Назад" необходимо в процедуре, соответствующей событию OnClick вставить строку:

procedure TForm1.ToolButton2Click(Sender: TObject);
begin
WebBrowser1.GoBack;
end;

Для кнопки "Вперед" напишите следующий код:

procedure TForm1.ToolButton3Click(Sender: TObject);
begin
WebBrowser1.GoForward;
end;

Для кнопки "Стоп" напишите:

procedure TForm1.ToolButton4Click(Sender: TObject);
begin
WebBrowser1.Stop;
end;

Для кнопки "Обновить":

procedure TForm1.ToolButton5Click(Sender: TObject);
begin
WebBrowser1.Refresh;
end;

И, наконец, для кнопки "Печать":

procedure TForm1.ToolButton6Click(Sender: TObject);
var
PostData, Headers:OLEvariant;
begin
WebBrowser1.ExecWB(OLECMDID_PRINT,OLECMDEXECOPT_DODEFAULT,PostData, Headers);
end;

В этой строке посылается команду через OLE ядру IE.

Ваш браузер почти готов. Можете немного изменить работу программы для лучшего восприятия.

Для этого размещаем на форме StatusBar из закладки "Win32" и изменяем у него свойство "SimplePanel" в true (по умолчанию false). Выделяем WebBrowser1 и переходим на закладку "Events" в ОbjecInspector-е. Дважды кликните по строке "OnStatusTextChange" и напишите в созданной процедуре следующее:

procedure TForm1.WebBrowser1StatusTextChange(Sender: TObject;
const Text: WideString);
begin
StatusBar1.SimpleText:=Text;
end;

Здесь мы присваиваем переменную "Text" (в ней хранится текст подсказки) в StatusBar1. Теперь можно видеть подсказки в строке состояния.

Добавьте ещё индикатор загрузки. Для этого расположите на форме ProgressBar из закладки "Win32". Измените у него свойство "Align" на "alBottom", чтобы он находился вдоль нижней границы формы. Снова выделите WebBrowser1 и щелкните по закладке "Events" в ОbjecInspector-е. Дважды щелкните по строке "OnProgressChange" и напишите в созданной процедуре:

procedure TForm1.WebBrowser1ProgressChange(Sender: TObject; Progress,
ProgressMax: Integer);
begin
ProgressBar1.Max:=ProgressMax;
ProgressBar1.Position:=Progress;
end;

Здесь созданному ProgressBar1 (индикатор загрузки) присваивается максимальное значение (ProgressMax) и текущее значение (Progress).





Дата публикования: 2015-04-10; Прочитано: 254 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!



studopedia.org - Студопедия.Орг - 2014-2024 год. Студопедия не является автором материалов, которые размещены. Но предоставляет возможность бесплатного использования (0.007 с)...