Transmetre des information de javascript vers c++ (Qt)

a marqué ce sujet comme résolu.
Auteur du sujet

Bonjour, Comment faire transmettre des information depuis une page avec le javascript vers une fonctionne en c++ avec Qtwebnegine de qt.

J’arrive pas a comprendre les exemples donné sur la documentation.

merci d’avance pour votre aide.

Édité par sdz43

+0 -0
Auteur du sujet

bon finalement j’ai trouvé comment faire, voici le code minimal :

webengine_test.pro :

QT       += core gui webenginewidgets webchannel

mainwindow.h :

public slots:
   void sendMessage(QString message) ;

mainwindow.cpp :

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

    ui->webview->load(QUrl("file://"+QDir::currentPath()+"/index.html"));
    QWebChannel * channel = new QWebChannel(ui->webview->page());
    ui->webview->page()->setWebChannel(channel);
    channel->registerObject(QString("widget"), this);
}
void MainWindow::sendMessage(QString message)
{
    QMessageBox msgBox;
    msgBox.setText(message);
    msgBox.exec();
}

index.html :

<script type="text/javascript" src="qwebchannel.js"></script>
<script>
  
    window.onload = function() {

        new QWebChannel(qt.webChannelTransport, function(channel) {
            var foo = channel.objects.widget;

            foo.sendMessage("message bien reçu!");
 
           
        });
    }   

</script>

qwebchannel.js

+0 -0
Vous devez être connecté pour pouvoir poster un message.
Connexion

Pas encore inscrit ?

Créez un compte en une minute pour profiter pleinement de toutes les fonctionnalités de Zeste de Savoir. Ici, tout est gratuit et sans publicité.
Créer un compte