Qt用QWebEngine找到单词功能

时间:2017-01-07 16:43:46

标签: c++ qt qtwebengine

我用Qt 5.7和webEngine创建了一个简单的Web浏览器。 我想创建一个搜索功能来在webView中查找单词,但我真的不知道如何在Web内容和Qt之间进行交互(我是Qt的新手,我这样做是为了好玩并提高我的水平)。

这是显示WebView的最小代码: main.cpp中

#include "mainwindow.h"

#include <QApplication>

int main(int argc, char *argv[])
{
    QApplication a(argc, argv);

    MainWindow w;
    w.showMaximized();

    return a.exec();
}

mainWindow.h

#ifndef MAINWINDOW_H
#define MAINWINDOW_H

#include <QMainWindow>
#include <QtWebEngineWidgets>

namespace Ui {
class MainWindow;
}

class MainWindow : public QMainWindow
{
    Q_OBJECT

public:
    explicit MainWindow(QWidget *parent = 0);
    ~MainWindow();
    void setWebEngine();

private:
    Ui::MainWindow *ui;
    QWebEngineView *view;    
};

#endif // MAINWINDOW_H

mainWindow.cpp

#include "mainwindow.h"
#include "ui_mainwindow.h"

MainWindow::MainWindow(QWidget *parent) :
    QMainWindow(parent),
    ui(new Ui::MainWindow)
{
    ui->setupUi(this);
    setWebEngine();
    setCentralWidget(view);
}

MainWindow::~MainWindow()
{
    delete ui;
}

void MainWindow::setWebEngine()
{
    view = new QWebEngineView();
    view->load(QUrl("http://www.google.com"));
}

我想了解其他内容,是否可以在网页内容中列出元素(表单,h1,h2,...)

度过愉快的一天,对不起我的英语;)

1 个答案:

答案 0 :(得分:2)

来自Qt5 documentation

void QWebEngineView::findText(const QString &subString, QWebEnginePage::FindFlags options = QWebEnginePage::FindFlags())
  

使用给定的内容在页面中查找指定的字符串subString   选项。

     

要清除选择,只需传递一个空字符串。

     

另请参阅selectedText()和selectionChanged()。

应该很简单。