Ошибка: Failed to parse the Currency Converter XML document.
$12 448.94


Ошибка: Failed to parse the Currency Converter XML document.
$1 975.50


Ошибка: Failed to parse the Currency Converter XML document.
$983.36


Пишем браузер

Продолжаю тему клонирования программ darkamster«a на Delphi в С++Builder. В этой статье я покажу, как с помощью стандартных компонентов, можно создать свой браузер. Браузер будет на движке »всеми-любимого' InternetExplorer. Наш зверь сможет ходить по URL, смотреть Html странички, ходить вперед и назад, конечно, перезагружать странички и останавливать загрузку.

Начнем новый проект. Советую сразу определиться с дизайном программы, не стоит далеко отходить от принятых стандартов, т.е кнопки навигации вверху, чуть ниже поле для ввода адреса URL, под ними будет располагаться просмотровщик страниц (компонент CppWebBrowser).


Пишем браузерЯ вместо button использовал компонент panel (это моя задумка — во время наведения курсора панелька будет подсвечена, как это реализовать я напишу в самом конце). Под навигацией у меня располагается Edit для ввода адреса, под ним компонент CppWebBrowser, так же нам понадобиться компонент OpenDialod — для просмотра страничек с жесткого диска. Итак, впервую очередь мы распишем событие, совершаемое при нажатии enter в edit (с учетом того, что пользователь указал адрес сайта, событие называется — OnKeyPress). Вот код:


if (Key == VK_RETURN){ // нажат ЕНТЕР
wchar_t URL[100];
Edit1->Text.WideChar(URL,100); //Edit1 принял адрес сайта
CppWebBrowser1->Navigate(URL,0,NULL,NULL,NULL); //Адрес направлен на cppwebbrowser, пошла загрузка
}

Далее напишем код для кнопки открыть:

OpenDialog1->Execute(); //Открываем окно выбора файлов
wchar_t URL[100];
Edit1->Text=(OpenDialog1->FileName); //Присваемаем Edit название выбраного файла
Edit1->Text.WideChar(URL,100);
CppWebBrowser1->Navigate(URL,0,NULL,NULL,NULL);

Кнопка назад:

CppWebBrowser1->GoBack();

Кнопка вперед:

CppWebBrowser1->GoForward();

Кнопка стоп:

CppWebBrowser1->Stop();

Кнопка Обновить:

CppWebBrowser1->Refresh();

Все готово =) Браузер будет спокойно бороздить просторы инета, под вашим чутким контролем. Теперь я распишу то, как менять цвет панелек при наведении. Итак, для начала обговорим, что стандартным цветом наших panel будет — clBtnFace. Теперь ставим на OnMouseMove, следующий код:

Panel1->Color=clSkyBlue; //я выбрал цвет — небесно синий

В результате чего, при наведии панель поменяет цвет, теперь заставим вернуть ее преждний цвет (если пользователь убрал мышь). Сперва, мы должны выбрать событие OnMouseMove для Form1 и теперь пишем код:

Panel1->Color=clBtnFace; //результат панель приняла стандартный цвет

 

Интересное

Взаимодействие с чужими окнами
Представьте себе, глупый пользователь сидит как ни в чём небывало с умным видом уже в какой раз пытается составить документ в Microsoft Word'e, но вдруг окно начинает бешено скакать по экрану, в...
Подробнее...
DBI для mSQL/mySQL
УстановкаДля использования интерфейсов rnSQL и MySQL к модулям DataBase Dependent/DataBaseIndependent (DBI/DBD) или MsqlPerl и MysqlPerl необходимо иметь следующие компоненты :
Подробнее...
Serv-U: Установка FTP-сервера
Хочу установить на своей машине в локальной сети FTP-сервер, но не выбрал программу. Какую именно вы посоветуете и каким образом ее нужно настроить?Выбор программы Спрос рождает предложение,...
Подробнее...
Протокол SOCKS 5
Этот документ описывает протокол связи по стандартам Интернет, и открытдля обсуждения и предложений. Пожалуйста обращайтесь к текущей редакции«Internet Official Protocol Standards»...
Подробнее...
Проблема медленного...
Кто бы чего не говорил, но операционная система Windows XP, зарекомендовала себя как достаточно надежная (при надлежащем отношении). Моя копия Windows XP SP1, в последующем обновленная до SP2,...
Подробнее...
10 фактов об архивировании...
Резервное копирование данных, конечно, не такая потрясающая штука, как двухъядерные микросхемы Intel, позволяющие установить на компьютере одновременно и Mac OS X, и Windows XP, но...
Подробнее...
Настройка Web...
Данное решение также может быть адресовано владельцам небольших беспроводных сетей, предоставляющим платную услугу использования Internet для мобильных абонентов. В интернет-кафе ставка обычно...
Подробнее...
Реальный домен виртуальной...
Краткая хронологияПроцедура регистрации домена .SU была инициирована в середине августа 1990 года, до окончательной регистрации дело дошло 19 сентября. Забавно, что почти ровно через год произошли...
Подробнее...
Многоязычность в РНР
Что же я имел ввиду, говоря о мультиязычности. Ну, наверняка каждый из моих достопочтенных читателей не раз видели крутые порталы и между всем сбродом информации находили две маленькие иконки,...
Подробнее...
Windows Seven выйдет в...
В Орландо, где ежегодно проводится конференция по подведению итогов продаж компании Microsoft, сообщили о том, что на разработку Windows Seven потребуется не менее 3 лет.Следует отметить, что в...
Подробнее...