Qt Webkit - 自动完成输入

标签 qt webkit

嗨,有人可以帮我找到文档(我不确定要查找什么),以便能够在 Qt Webkit 中更改网页上输入文本框内的文本 - 我基本上想制作一个功能,以便人们可以记住他们的输入在网页上并另存为预设.. 单击预设后 - 自动填充。

最佳答案

我相信您可以在加载页面后使用 QWebFrame 对象访问页面的 Web 元素集合; QWebFrame 可以通过 QWebView 的 page() 方法使用。有关详细信息,请参见下面的示例;它加载谷歌网页并将值插入搜索文本框:

...
// connect the load finished signal of the webview
QWebView::connect(ui->webView, SIGNAL(loadFinished(bool)), this, SLOT(on_pageLoad_finished(bool)));
// load a webpage
QUrl url("http://www.google.com/");
ui->webView->load(url);
... 

on_pageLoad_finished 信号实现:

void MainWindow::on_pageLoad_finished(bool ok)
{
    if (ok)
    {
        QWebFrame* frame = ui->webView->page()->currentFrame();
        if (frame!=NULL)
        {
            // get collection of the input web elements with name set to "q"
            // this function was introduced in Qt 4.6.
            QWebElementCollection collection = frame->findAllElements("input[name=q]");
            foreach (QWebElement element, collection)
                element.setAttribute("value", "qt webkit autocomplete an input");
        }
    }
}

希望这对你有帮助,问候

关于Qt Webkit - 自动完成输入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1959048/

相关文章:

html - 谷歌浏览器中的白线?

c++ - 并行运行多个 QEventLoop(对于 QtNetwork)

c# - 是否可以像 WebView 一样在 Windows 窗体中嵌入 Gecko 或 Webkit?

javascript - 我可以禁用 Chrome/Webkit 并行 CSS 和 JS 下载功能吗?

c++ - 使用 Blink 作为前端布局引擎——从哪里开始?

c++ - Qt-如何实现一个可读写的QSqlQueryModel?

c++ - 将 Qt::[Enum/Flag] 注册为 QtMetaType

c++ - 通过 QPushButton 信号更改 QLabel setPixmap()

qt - QML:调整复选框大小

css - 为什么 CSS 3d 动画在 safari 而不是 chrome 上工作,如果它们都是使用 webkit 构建的?