|
#16
|
||||
|
||||
Да это да, но можно например использовать движок WebKit (его использует гугл хром например), и страницы открываться будут еще быстрее. А на счет компонент - они во первых бесплатные, во вторых много функций, вот и все...
Помогаю за Спасибо |
#17
|
|||
|
|||
Код:
procedure TForm1.WebBrowser1NewWindow2(Sender: TObject; var ppDisp: IDispatch; var Cancel: WordBool); var tss: TTabSheet;//вкладка begin if Twebbrowser(Sender).ReadyState <> READYSTATE_COMPLETE then begin ppDisp := nil; Cancel := True; end else begin tss := CreateTabBrowser('about:blank', 'Новая вкладка');//создаем вкладку с пустым адресом WaitForBrowser(Twebbrowser(tss.Controls[0]));//ожидаем завершения работы Twebbrowser ppdisp := (Twebbrowser(tss.Controls[0])).Application;//передаем фокус активному веббровсеру WaitForBrowser(Twebbrowser(tss.Controls[0]));//ожидаем завершение работы веббровсера(активного разумется) end; end; Последний раз редактировалось Admin, 09.10.2010 в 19:18. |
#18
|
||||
|
||||
Правильно ругается
Код:
function CreateNewTabBrowser(Url: string): TTabSheet; У него всего 1 параметр, поэтому надо писать: Код:
CreateTabBrowser('about:blank'); Помогаю за Спасибо |
#19
|
|||
|
|||
не помогает, undeclared identifier "CreateTabBrowser" такая ошибка то
|
#20
|
||||
|
||||
Ну понимаешь, я не телепат, но такая ошибка из-за того, что ты не обьъявил это функцию, объяви ее в баблике:
Код:
type TForm1 = class(TForm) PageControl1: TPageControl; ... private public function CreateNewTabBrowser(Url: string): TTabSheet; end; ... function TForm1.CreateNewTabBrowser(Url: string): TTabSheet; begin NewTab := TTabSheet.Create(PageControl1); with NewTab do begin PageControl := PageControl1; Parent := PageControl1; PageIndex := PageControl1.ActivePageIndex; end; DesignTimeWB := TEmbeddedWB.Create(NewTab); TControl(DesignTimeWB).Parent := NewTab; with DesignTimeWB do begin EnableMessageHandler := True; LoadSettings; Align := alClient; OnStatusTextChange := NewWebStatusTextChange; OnNewWindow2 := NewWindowEvent; OnDownloadComplete := DownloadCompleteEvent; if Trim(URL) <> '' then DesignTimeWB.NavigateWait(URL); end; PageControl1.ActivePage := NewTab; Result := NewTab; end; Помогаю за Спасибо |
#21
|
||||
|
||||
Adrenalin666: 5-дневный бан за неоднократное несоблюдение правил форума, п.2.8...
|
#22
|
||||
|
||||
Код:
private public function CreateNewTabBrowser(Url: string): TTabSheet; end; ... function TForm1.CreateNewTabBrowser(Url: string): TTabSheet; begin NewTab := TTabSheet.Create(PageControl1); with NewTab do begin PageControl := PageControl1; Parent := PageControl1; PageIndex := PageControl1.ActivePageIndex; end; DesignTimeWB := TEmbeddedWB.Create(NewTab); TControl(DesignTimeWB).Parent := NewTab; with DesignTimeWB do begin EnableMessageHandler := True; LoadSettings; Align := alClient; OnStatusTextChange := NewWebStatusTextChange; OnNewWindow2 := NewWindowEvent; OnDownloadComplete := DownloadCompleteEvent; if Trim(URL) <> '' then DesignTimeWB.NavigateWait(URL); end; PageControl1.ActivePage := NewTab; Result := NewTab; end; |
#23
|
||||
|
||||
объявил вот выдает ошибку
|
#24
|
||||
|
||||
Ну вы даете, не понимая что вам пишет Дельфи, как вы собираетесь дальше писать программы? Пишет он, что вы описали вашу функцию, а реализации ее не наблюдается. Правой мышой на классе и выбрать Complete class at cursor. Дельфи добавит пустую реализацию вашей функции.
Жизнь такова какова она есть и больше никакова. Помогаю за спасибо. |
#25
|
||||
|
||||
Код:
unit Unit1; interface uses Windows, Messages, SysUtils, {$IFDEF DELPHI6UP}Variants, {$ENDIF}AppEvnts, Dialogs, ExtDlgs, Graphics, Menus, ExtCtrls, ImgList, Controls, StdCtrls, ComCtrls, OleCtrls, SHDocVw, ToolWin, Buttons, WBFuncs, Classes, Forms, HistoryMenu, FavMenu, ActiveX, IEAddress, ShellAPI, MSHTML, UrlMon, CommCtrl, WinInet, ComObj; type TForm1 = class(TForm) CoolBar1: TCoolBar; ToolBar1: TToolBar; ToolButton1: TToolButton; ToolButton2: TToolButton; ToolButton3: TToolButton; ToolButton4: TToolButton; ToolButton5: TToolButton; ToolButton6: TToolButton; OpenDialog1: TOpenDialog; IEAddress1: TIEAddress; MainMenu1: TMainMenu; File1: TMenuItem; Exit1: TMenuItem; N2: TMenuItem; PrintSetup1: TMenuItem; Print1: TMenuItem; N3: TMenuItem; SaveAs1: TMenuItem; Save1: TMenuItem; Open1: TMenuItem; New1: TMenuItem; PageControl1: TPageControl; TabSheet1: TTabSheet; WebBrowser1: TWebBrowser; procedure ToolButton1Click(Sender: TObject); procedure ToolButton2Click(Sender: TObject); procedure ToolButton3Click(Sender: TObject); procedure ToolButton5Click(Sender: TObject); procedure ToolButton4Click(Sender: TObject); procedure ToolButton6Click(Sender: TObject); procedure IEAddress1KeyDown(Sender: TObject; var Key: Word; Shift: TShiftState); procedure WebBrowser1NewWindow2(Sender: TObject; var ppDisp: IDispatch; var Cancel: WordBool); private public function CreateTabBrowser(sURL, sCaption: string): TTabSheet; end; var Form1: TForm1; implementation {$R *.dfm} procedure TForm1.ToolButton1Click(Sender: TObject); begin if OpenDialog1.Execute then begin WebBrowser1.Navigate(OpenDialog1.FileName); IEAddress1.Text := OpenDialog1.FileName; end; end; procedure TForm1.ToolButton2Click(Sender: TObject); begin WebBrowser1.GoBack; end; procedure TForm1.ToolButton3Click(Sender: TObject); begin WebBrowser1.GoForward; end; procedure TForm1.ToolButton5Click(Sender: TObject); begin WebBrowser1.Stop; end; procedure TForm1.ToolButton4Click(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; procedure TForm1.IEAddress1KeyDown(Sender: TObject; var Key: Word; Shift: TShiftState); begin if Key = VK_RETURN then WebBrowser1.Navigate(IEAddress1.Text); end; procedure TForm1.WebBrowser1NewWindow2(Sender: TObject; var ppDisp: IDispatch; var Cancel: WordBool); var tss: TTabSheet;//вкладка begin if Twebbrowser(Sender).ReadyState <> READYSTATE_COMPLETE then begin ppDisp := nil; Cancel := True; end else begin tss := CreateTabBrowser('about:blank', 'Новая вкладка');//создаем вкладку с пустым адресом WaitForBrowser(Twebbrowser(tss.Controls[0]));//ожидаем завершения работы Twebbrowser ppdisp := (Twebbrowser(tss.Controls[0])).Application;//передаем фокус активному веббровсеру WaitForBrowser(Twebbrowser(tss.Controls[0]));//ожидаем завершение работы веббровсера(активного разумется) end; end; function TForm1.CreateTabBrowser(sURL, sCaption: string): TTabSheet; begin end; end. |
#26
|
||||
|
||||
де компоненти можна скачати
|