Sign in Join
Wiki copytemporary

Webbrowser/ru: what changed

Revision 0 to 1. Removed lines have a minus sign; added lines have a plus sign.

Title: Webbrowser/ru

OldNewLine
1+# Запуск веб-браузера для просмотра страницы/адреса
2+
3+## OpenURL
4+
5+OpenURL — это простейший способ открыть URL. Эта процедура определит, какой программой адрес должен быть открыт по умолчанию, и откроет в ней указанный URL. Она может использоваться для адресов вида 'mailto:aname@AnAddress?subject=:::A subject line', веб-адресов вида 'http://' и адресов файлов в виде 'file:///'.
6+
7+``` pascal
8+uses LCLIntf;
9+...
10+OpenURL('http://www.lazarus.freepascal.org');
11+```
12+
13+## Определение браузера, используемого по умолчанию
14+
15+Для каждой платформы существует свой механизм, позволяющий определять программы, используемые по умолчанию. Модуль LCL *lazhelphtml* содержит класс THTMLBrowserHelpViewer, позволяющий запускать веб-браузер для просмотра справки LCL. Можно использовать его (класса THTMLBrowserHelpViewer) метод FindDefaultBrowser, чтобы определить браузер, используемый по умолчанию, и запустить его. Далее пример:
16+
17+``` pascal
18+uses
19+ Classes, ..., LCLProc, LazHelpHTML;
20+
21+...
22+
23+implementation
24+
25+procedure TMainForm.Button1Click(Sender: TObject);
26+var
27+ v: THTMLBrowserHelpViewer;
28+ BrowserPath, BrowserParams: string;
29+begin
30+ v:=THTMLBrowserHelpViewer.Create(nil);
31+ v.FindDefaultBrowser(BrowserPath,BrowserParams);
32+ debugln(['Path=',BrowserPath,' Params=',BrowserParams]);
33+ v.Free;
34+end;
35+```
36+
37+В Убунту (Linux) вы можете получить, как пример:
38+
39+`Browser=/usr/bin/xdg-open Params=%s`
40+
41+В Windows:
42+
43+`Browser=C:\windows\system32\rundll32.exe Params=url.dll,FileProtocolHandler %s`
44+
45+## Запуск браузера
46+
47+Если вы знаете, что такое командная строка и параметры, вы можете использовать класс TProcessUTF8, чтобы запустить браузер:
48+
49+``` pascal
50+uses
51+ Classes, ..., LCLProc, LazHelpHTML, UTF8Process;
52+
53+...
54+
55+implementation
56+
57+procedure TMainForm.Button1Click(Sender: TObject);
58+var
59+ v: THTMLBrowserHelpViewer;
60+ BrowserPath, BrowserParams: string;
61+ p: LongInt;
62+ URL: String;
63+ BrowserProcess: TProcessUTF8;
64+begin
65+ v:=THTMLBrowserHelpViewer.Create(nil);
66+ try
67+ v.FindDefaultBrowser(BrowserPath,BrowserParams);
68+ debugln(['Path=',BrowserPath,' Params=',BrowserParams]);
69+
70+ URL:='http://www.lazarus.freepascal.org';
71+ p:=System.Pos('%s', BrowserParams);
72+ System.Delete(BrowserParams,p,2);
73+ System.Insert(URL,BrowserParams,p);
74+
75+ // запуск браузера
76+ BrowserProcess:=TProcessUTF8.Create(nil);
77+ try
78+ BrowserProcess.CommandLine:=BrowserPath+' '+BrowserParams;
79+ BrowserProcess.Execute;
80+ finally
81+ BrowserProcess.Free;
82+ end;
83+ finally
84+ v.Free;
85+ end;
86+end;
87+```
88+
89+# Использование компонента turbopower internet pro
90+
91+Lazarus предоставляет пакет TurboPowerIPro (lazarus/components/turbopower_ipro/turbopoweripro.lpk), который имеет следующие возможности:
92+
93+- Содержит компоненты, которые можно поместить на форму. Когда вы установите пакет в IDE, появятся несколько новых компонентов на палитре (панели компонентов), которые можно бросить на форму, также, как и другие компоненты LCL.
94+- Он полностью написан на паскале, и будет работать на всех платформах "из коробки" без каких-либо дополнительных манипуляций.
95+- Вы получите полный контроль над тем, какие файлы/адреса будут открываться.
96+- Все-таки у него меньше возможностей, чем у полноценного веб-браузера. Не умеет проигрывать мультимедийные данные, использовать ява-скрипт или flash. Эти функции должны быть добавлены вами.
97+
98+Можно найти несколько примеров в lazarus/components/turbopower_ipro/examples, демонстрирующих как открывать локальный html-файл с изображениями, гиперссылками и кнопками истории посещений.
99+
100+# QT Webkit
101+
102+Если вы используете набор визуальных компонентов Qt, то вы сможете использовать Qt Webkit для того, чтобы вставить браузер в LCL-форму. Lazarus LCL/Qt WebKit доступен по адресу [1](http://users.telenet.be/Jan.Van.hijfte/qtforfpc/fpcqt4.html).
103+
104+# THtmlPort
105+
106+THtmlPort - это версия HTML-компонентов, разработанных Дэйвом Болдуином, для Lazarus/Free Pascal, включает THtmlViewer, TFrameViewer и TFrameBrowser. [THtmlPort вики](http://wiki.lazarus.freepascal.org/THtmlPort)
107+
108+# GeckoPort
109+
110+GeckoPort - это адаптированная для Lazarus/Free Pascal версия Gecko SDK, разработанного Таканори Ито для Delphi, включая компонент TGeckoBrowser.
111+
112+[GeckoPort вики](http://wiki.lazarus.freepascal.org/GeckoPort)
113+
114+## [[LazActiveX]]
115+
116+Импортированная библиотека объектов Internet Explorer.
117+
118+## LazWebKit
119+
120+Webkit для GTK2 [lazwebkit](http://sourceforge.net/p/lazwebkit/wiki/Home/)
121+
122+# See also
123+
124+- [[Executing External Programs]]
125+
126+---
127+*From the Free Pascal wiki, page "Webbrowser/ru", as it stood on 2020-03-04 after a change by Trev, out of the wiki's dump of 2024-05-26. Copyright stays with the author who wrote it, according to the old wiki's [[Licensing]] page. If you have concerns about this material, [message the admin](/wiki-contact).*

Back to history