Delphi, komponent MozillaBrowser

Odpowiedz Nowy wątek
Daniel Burchardt
2011-05-26 16:30
Daniel Burchardt
0

Witam

Próbuje utworzyć zakładki a na każdej z nich komponent MozillaBrowser.

procedure TForm1.Button1Click(Sender: TObject);
var zakladka : TTabSheet;
    MozillaBrowser     : TMozillaBrowser;
begin
zakladka := TTabSheet.Create(Self);
zakladka.Caption := 'Nowa karta';
zakladka.PageControl := PageControl1;

MozillaBrowser := TMozillaBrowser.Create(Self);
MozillaBrowser.Align := alClient;

zakladka.Show;
end;

Zakładki dodają się elegancko, następnie próbuje wyświetlić na aktywnej strone

procedure TForm1.Button2Click(Sender: TObject);
begin

(PageControl1.ActivePage.Controls[0] as TMozillaBrowser).Navigate('http://www.onet.pl');

end;

Niestety otrzymuje błąd:
http://imageshack.us/f/810/errorql.jpg/

Dziękuje za pomoc

Pozostało 580 znaków

2011-05-26 16:48
Moderator

Rejestracja: 11 lat temu

Ostatnio: 2 miesiące temu

Lokalizacja: Szczecin

0

Widocznie PageControl1.ActivePage.Controls[0] wkazuje na nil. Ja nie używałem nigdy TMozillaBrowser, bo nie mam FireFoxa, ale jeżeli tak jak TWebBrowser ów kontrola posiada własnośc Name to nadał bym jej sensowną i unikalną z kolejnym numerem przy tworzeniu, a następnie odwoływał się do niej przez na przykład MB := TMozillaBrowser(Self.FindComponent(...); i później sprawdzając czy MB jest różne od nil dopiero odwoylwal się MB.Navigate(...);.


Pozostało 580 znaków

Daniel Burchardt
2011-05-26 16:57
Daniel Burchardt
0

Witam

MozillaBrowser := TMozillaBrowser.Create(Self);
MozillaBrowser.Align := alClient;
MozillaBrowser.Name := 'test';

Przy próbie nadania nazwy dostaje błąd, że wartość jest tylko do odczytu.

Pozdrawiam

Pozostało 580 znaków

2011-05-26 17:15

Rejestracja: 16 lat temu

Ostatnio: 3 tygodnie temu

0

Kwestia Parenta dla Mozzilli:

procedure TForm1.Button1Click(Sender: TObject);
var zakladka : TTabSheet;
    MozillaBrowser     : TMozillaBrowser;
begin
zakladka := TTabSheet.Create(Self);
zakladka.Caption := 'Nowa karta';
zakladka.PageControl := PageControl1;

MozillaBrowser := TMozillaBrowser.Create(Self);
MozillaBrowser.Parent:= zakladka;
MozillaBrowser.Align := alClient;

zakladka.Show;
end
edytowany 2x, ostatnio: zibicoder, 2011-05-26 17:18

Pozostało 580 znaków

Daniel Burchardt
2011-05-26 17:17
Daniel Burchardt
0

Witam

Niestety próba ustawiania rodzica kończy się błędem iż zmienna jest tylko do odczytu.

MozillaBrowser.Parent:= zakladka;

Pozdrawiam

Pozostało 580 znaków

2011-05-26 17:39

Rejestracja: 16 lat temu

Ostatnio: 3 tygodnie temu

0

Sorry, zapomnialem ze oni to zrobili na wzór TWebBrowser IE.
Powinno być tak:

MozillaBrowser.ParentWindow:= zakladka.Handle;

Preztestuj to, bo ja akurat mam odinstalowaną kontrolkę od Mozilli.

Pozostało 580 znaków

Odpowiedz

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0