一緒にlibcefを勉強します.あなたのcefにjsコードを実行させます.
2418 ワード
今日は皆さんと共有して、私達のクライアントでjava scriptコードをどうやって実行しますか?
再度の声明:cefのソースコードの中で、すべての関数の前の注釈はきっと注意深く読みます!!
ここで待ちますか?browserを使っているのを見ましたが、これは何の鬼ですか?
以下は一番簡単な実行です.
再度の声明:cefのソースコードの中で、すべての関数の前の注釈はきっと注意深く読みます!!
// Execute a string of JavaScript code in this. The |script_url|
// parameter is the URL where the script in question can be found, if any.
// The renderer may request this URL to show the developer the source of the
// error. The |start_line| parameter is the base line number to use for error
// reporting.
///
/*--cef(optional_param=script_url)--*/
virtual void ExecuteJavaScript(const CefString& code,
const CefString& script_url,
int start_line) =0;
最も簡単な呼び出し方法:1はメインフレームを獲得します.CefRefPtr<CefFrame> main_frame = browser->GetMainFrame();
何がGetMainFrameですか? // Returns the main (top-level) frame for the browser window.
///
/*--cef()--*/
virtual CefRefPtr<CefFrame> GetMainFrame() =0;
top-levelでjsコードを呼び出すという意味です.ここで待ちますか?browserを使っているのを見ましたが、これは何の鬼ですか?
CefRefPtr<CefBrowser> browser = g_web_browser_client->GetBrowser();
つまり、browserは私たちが作成したブラウザのハンドルを指しています.または、ポインタといいます.以下は一番簡単な実行です.
CefRefPtr<CefBrowser> browser = ...;
CefRefPtr<CefFrame> frame = browser->GetMainFrame();
frame->ExecuteJavaScript("alert('ExecuteJavaScript works!');",
frame->GetURL(), 0);
これから、地元のjsコードの実行方法とjsコードのcalbackの取得方法を皆さんと一緒に勉強します.