Une référence C++ à une fonction membre non statique est requise

KiwiFruit555

Je crée un navigateur simple en utilisant QT5.

J'ai un QMainWindowavec un à l' QWebEngineViewintérieur et j'essaie de faire en sorte qu'il accepte automatiquement les demandes d'autorisation, mais je n'arrive pas à le faire fonctionner ... (Plus tard, je le ferai demander à l'utilisateur)

J'ai regardé en ligne et j'ai trouvé quelque chose, mais la solution n'a pas fonctionné pour moi car ils ont configuré leur application différemment de moi.

Le main.cppest simplement la valeur par défaut avec une déclaration de MainWindowet l'affichant

mainwindow.cpp

#include "mainwindow.h"
#include "ui_mainwindow.h"
#include <QUrl>
#include <QWebEngineView>
#include <QWebEnginePage>

MainWindow::MainWindow(QWidget *parent) :
    QMainWindow(parent),
    ui(new Ui::MainWindow)
{
    ui->setupUi(this);
    connect(ui->view->page(), ui->view->page()->featurePermissionRequested, this, this->onFeaturePermissionRequested);
}


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

void MainWindow::on_lineEdit_returnPressed()
{
    QString url = ui->lineEdit->text();
    QUrl curl;
    curl.setUrl(url);
    ui->view->setUrl(curl);
}

void MainWindow::on_back_pressed()
{
    ui->view->back();
}


void MainWindow::on_forward_pressed()
{
    ui->view->forward();
}


void MainWindow::on_reload_pressed()
{
    ui->view->reload();
}


void MainWindow::on_view_urlChanged(const QUrl &arg1)
{
    QString newurl = arg1.toString();
    QStringList urllist = newurl.split('?');
    ui->lineEdit->setCursorPosition(0);
    ui->lineEdit->setText(urllist[0]);
}

void MainWindow::onFeaturePermissionRequested(const QUrl &securityOrigin, QWebEnginePage::Feature feature)
{
    ui->view->page()->setFeaturePermission(securityOrigin, feature, QWebEnginePage::PermissionPolicy(1));
}

Et le fichier d'en-tête est le suivant :

mainwindow.h

#ifndef MAINWINDOW_H
#define MAINWINDOW_H

#include <QMainWindow>
#include <QWebEnginePage>

namespace Ui {
class MainWindow;
}

class MainWindow : public QMainWindow
{
    Q_OBJECT

public:
    explicit MainWindow(QWidget *parent = nullptr);
    ~MainWindow();


private slots:
    void on_lineEdit_returnPressed();

    void on_back_pressed();

    void on_forward_pressed();

    void on_reload_pressed();

    void on_view_urlChanged(const QUrl &arg1);

    void onFeaturePermissionRequested(const QUrl &securityOrigin, QWebEnginePage::Feature feature);

private:
    Ui::MainWindow *ui;
};


#endif // MAINWINDOW_H

Chaque fois que j'essaie de le construire, je reçois ces messages

/home/kiwifruit555/Documents/kUwU/Web/mainwindow.cpp:12: error: invalid use of non-static member function ‘void QWebEnginePage::featurePermissionRequested(const QUrl&, QWebEnginePage::Feature)’
../Web/mainwindow.cpp: In constructor ‘MainWindow::MainWindow(QWidget*)’:
../Web/mainwindow.cpp:12:49: error: invalid use of non-static member function ‘void QWebEnginePage::featurePermissionRequested(const QUrl&, QWebEnginePage::Feature)’
   12 |     connect(ui->view->page(), ui->view->page()->featurePermissionRequested, this, this->onFeaturePermissionRequested);
      |                               ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/qt/QtWebEngineWidgets/QWebEnginePage:1: In file included from /usr/include/qt/QtWebEngineWidgets/QWebEnginePage:1,
In file included from /usr/include/qt/QtWebEngineWidgets/QWebEnginePage:1,
                 from ../Web/mainwindow.h:5,
                 from ../Web/mainwindow.cpp:1:
/usr/include/qt/QtWebEngineWidgets/qwebenginepage.h:342:10: note: declared here
  342 |     void featurePermissionRequested(const QUrl &securityOrigin, QWebEnginePage::Feature feature);
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~

J'ai essayé plusieurs choses mais je n'arrive pas à le faire fonctionner...

eyllanesc

La syntaxe de connexion doit être :

connect(ui->view->page(), &QWebEnginePage::featurePermissionRequested, this, &MainWindow::onFeaturePermissionRequested);

Pour plus d'informations, lisez la nouvelle syntaxe d'emplacement de signal .

Il est également préférable d'utiliser explicitement la valeur enum au lieu de la valeur numérique :

ui->view->page()->setFeaturePermission(securityOrigin, feature, QWebEnginePage::PermissionGrantedByUser);

Cet article est collecté sur Internet, veuillez indiquer la source lors de la réimpression.

En cas d'infraction, veuillez [email protected] Supprimer.

modifier le
0

laisse moi dire quelques mots

0commentaires
connexionAprès avoir participé à la revue

Articles connexes

"Une référence d'objet est requise pour accéder au membre non statique unityengine.transform.localrotation"

Erreur C ++: la référence à une fonction membre non statique doit être appelée

C ++ est-ce que je référence une fonction ou un membre de données? (la référence à une fonction membre non statique doit être appelée)

Erreur étrange "une référence à une fonction membre non statique doit être appelée"

Une référence d'objet est requise pour le champ non statique Ebay oauth library

Une référence d'objet est requise pour le champ non statique ... etc

La référence à une fonction membre non statique doit être appelée

la référence à une fonction membre non statique doit être appelée error

une référence de membre non statique doit être relative à un objet spécifique c ++

Une erreur de référence de membre non statique dans Array à l'aide de C ++

C ++ Une référence de membre non statique doit être relative à un objet spécifique

C# Une référence d'objet est requise pour le champ, la méthode ou la propriété non statique 'HttpContext.Request'

C# XNA Une référence d'objet est requise pour le champ, la méthode ou la propriété non statique

Une référence d'objet est requise pour le champ, la méthode ou la propriété non statique 'Program.c8y_Event_MSG' [deserializeJSON]

Méthode d'extension: 'une référence d'objet est requise pour accéder au membre non statique' Erreur renvoyée lors de l'exécution dans Travis CI

Pourquoi ce constructeur d'instance C # n'est-il pas appelé, sauf s'il y a une référence à un membre non statique?

Quelle est la différence entre une fonction membre statique et une fonction globale?

Comment résoudre une référence non définie à sa propre fonction membre C++ ?

Une fonction statique est-elle équivalente à un membre Func statique en C #?

utilisation non valide d'une fonction membre non statique

C ++ Utiliser une classe de modèle pour appeler une fonction membre non statique

C # Comment appeler une action sur une fonction membre non statique?

Une référence de membre non statique doit être relative à un objet spécifique c++

une référence de membre non statique doit être relative à un objet spécifiqueC/C++(245)

Erreur C ++ Une référence de membre non statique doit être relative à un objet spécifique

Convertir l'esquisse ino en classe C ++, utilisation non valide d'une fonction membre non statique

Tâche C ++ freeRTOS, utilisation non valide d'une fonction membre non statique

erreur : utilisation non valide d'une fonction membre non statique en c++

Le decltype d'une fonction membre non statique est-il mal formé?

TOP liste

  1. 1

    Comment utiliser HttpClient avec TOUT cert ssl, quelle que soit la « mauvaise » est

  2. 2

    Comment afficher du texte au milieu de div avec une couleur d'arrière-plan différente?

  3. 3

    Résultat de l'échantillonneur JMeter : comprendre le temps de chargement, le temps de connexion et la latence

  4. 4

    Pourquoi Object.hashCode () ne suit pas la convention du code Java

  5. 5

    Modbus Python Schneider PM5300

  6. 6

    Comment faire une recherche partielle et obtenir un score pertinent dans Elasticsearch

  7. 7

    Autocomplete avec java, Redis, Recherche élastique, Mongo

  8. 8

    Comment choisir le nombre de fragments et de répliques Elasticsearch

  9. 9

    optimiser les opérations du serveur avec elasticsearch: traitement des filigranes de disque bas

  10. 10

    MasterService d'ElasticSearch prend trop de temps pour calculer l'état du cluster et lancer ProcessClusterEventTimeoutException

  11. 11

    Comment changer la couleur de la police dans R?

  12. 12

    Comment vérifier si un utilisateur spécifique a un rôle? Discord js

  13. 13

    Existe-t-il un moyen de voir si mon bot est hors ligne ?

  14. 14

    Faire une requête HTTP avec Elixir et Phoenix

  15. 15

    Spring @RequestParam DateTime format comme ISO 8601 Date Heure facultative

  16. 16

    Comment analyser un hachage Ruby plat en un hachage imbriqué?

  17. 17

    Comment empêcher Spring Boot de créer automatiquement une instance du bean 'entityManagerFactory' au démarrage?

  18. 18

    Ajustement non linéaire avec R

  19. 19

    Quelque chose dans le cluster Elasticsearch 7.4 devient de plus en plus lent avec les délais de lecture de temps en temps

  20. 20

    comment afficher un bouton au-dessus d'un autre élément ?

  21. 21

    Comment créer une nouvelle application dans Dropbox avec des autorisations complètes

chaudétiquette

Archive