ЖУРНАЛ ХАКЕР

Твой собственный Web-браузер

Спецвыпуск Хакер, номер #004, стр. 004-068-3


procedure TForm1.ToolButton2Click(Sender: TObject);

begin

WebBrowser1.GoBack;

end;

Я думаю, что здесь ничего объяснять не надо. Мы просто заставляем WebBrowser1 идти на предыдущую страницу.

Повтори те же операции для кнопки "Вперед", чтобы создать процедуру. Напиши для нее следующий код:

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. Просто скопируй ее один к одному в свой исходник и поверь мне на слово.

Теперь можешь нажать "F9", и твоя прога должна запуститься. Попробуй поиграть с ней. Неплохие ощущения? Закрывай свой браузер, остались последние штрихи!

Последние штрихи

Твой браузер почти готов. Я только наведу небольшой марафет.

Для начала брось на форму 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).

Теперь надо украсить наши кнопки, а то они смотрятся как сам IE. Для этого брось на форму ImageList и произведи по нему ДоублеКлик. Перед тобой откроется окно, как на рисунке 7. Сюда нужно добавить картинки размером 16х16. Для этого нажми кнопку "Add", и перед тобой откроется стандартное окно открытия файла. Найди картинку и нажми "Открыть". Повтори эту процедуру 6 раз (6 картинок для 6-и кнопок). После всего этого нажми "ОК".

Теперь выдели ToolBar1 и в ObjectInspector-е измени свойство Images на "ImageList1". На твоих кнопках должны появиться картинки. Если ты добавлял картинки не в том порядке, как они у тебя стоят на форме, то можешь пересортировать их с помощью свойства ImageIndex у кнопки. Например: щелкни по кнопке "Стоять" и измени ImageIndex на 0. На кнопке должна появиться картинка, указанная первой в ImageList1.

Назад на стр. 004-068-2  Содержание  Вперед на стр. 004-068-4