修訂--->如何設置qt二進制/ html的路徑來從HTML使用JavaScript調用QINVOKABLE函數?
基於此輸入,我已經開始探索提到的網站上的例子的旅程 - http://qt.developpez.com/doc/4.7/qtwebkit-bridge/
我想了解瘦客戶機模式 - 即我要打電話來自java腳本的QT函數。我在我的機器上使用FC16。
建立在QT Creator之後,我得到以下問題 - 這是一個控制檯應用程序。
#include <QCoreApplication>
#include <QWebElement>
class MyObject : QObject {
Q_OBJECT
public slots:
void doSomethingWithWebElement(const QWebElement&);
};
/* ... */
int main(int argc, char *argv[])
{
QCoreApplication a(argc, argv);
MyObject myObject;
myWebPage.mainFrame()->addToJavaScriptWindowObject("myObject", &myObject);
return a.exec();
}
/home/joshis1/Demo_JS/main.cpp:2: error: QWebElement: No such file or directory
#include <QWebElement>
^
我不知道接下來要做什麼。接下來的部分是做到以下幾點 -
HTML:
<html>
<head>
<script>
function runExample() {
myObject.doSomethingWithWebElement(document.getElementById("someElement"));
}
</script>
</head>
<body onload="runExample()">
<span id="someElement">Text</span>
</body>
</html>
我真的不知道,如何解決這個錯誤。我在我的fedora核心機器上使用QT 3.0.0。我腦海中的下一個問題是,Javascript如何調用我的函數。這裏應該是什麼路徑設置?有人可以用一個很好的例子來解釋嗎?
我已經使用QT-Creator實現了一個小型控制檯應用程序。這是文件。
shreyas.html
<html>
<head>
<script>
var results;
function pi_calculate()
{
results = get_string_from_qt();
document.write(var);
}
</script>
</head>
在QT,我已經做了一個小型控制檯應用程序,並已宣佈的功能QINVOKABLE。
QINVOKABLE QString Hello::get_string_from_qt()
{
return "I am QT";
}
我該怎麼做?我需要設置什麼路徑才能調用該函數?我想基本上鍊接我的JavaScript與QT二進制文件。因此,我將能夠從HTML調用C++函數。我是QT的新手。我會很感激一個例子。
@SHREYASJOSHI ?? ??啓動Qt Creator,在歡迎屏幕上轉到示例,在搜索框中鍵入'webkit bridge',打開項目,編譯並運行。沒有比這更簡單的了。 –
@SHREYASJOSHI Qt創建者的示例屏幕應該是*之前*的任何其他地方的起點。 –
對不起,我無法移動文檔的任何地方。不知道如何設置路徑,以便我的JavaScript知道拾取我的qt函數。 –