我有一个桌面c ++ / qt gui应用程序,它使用QWebview作为其中心小部件。
我正在努力做一些看起来相当微不足道的事情。我想从qt向网页添加一个元素,如下例
<body>
<h1>When Are You Going To Fix This</h1>
</body>
到
<body>
<h1>When Are You Going To Fix This</h1>
<p>I am doing it now</p>
</body>
我尝试了其他变种
//.. Gui set up and url loaded into webview
// my attempt at adding a new HTML element
QWebFrame * frame = ui->webView->page()->mainFrame();
QWebElement body = frame->documentElement().findFirst("BODY");
if(!body.isNull()){
QWebElement newElem; //create a new element to
newElem.appendInside("<p>I am doing it now</p>");
newElem.appendInside(body);
}
我也尝试过创建一个新元素并构建所需的部分,但无济于事
QWebFrame * frame = ui->webView->page()->mainFrame();
QWebElement body = frame->documentElement().findFirst("BODY");
if(!body.isNull()){
QWebElement newElem; //create a new element to
newElem.setAttribute("TAG", "P");
newElem.setAttribute("innerHTML", "I am doing it now");
newElem.appendInside(body);
}
是否可以使用qt webkit执行此操作,或者我错过了一些非常明显的内容..?
答案 0 :(得分:0)
我不知道QWebElements但是我只是用ui->webView()->page()->mainFrame()->toHtml();
将html解压缩为QString,然后将段落插入到html中,最后将html加载到带有ui->webView()->setHtml(html);
的QWebView中。