IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Discussion :

Nouvelle version de Qt : changements dans la syntaxe des signaux

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Candidat au Club
    Homme Profil pro
    Technicien réseaux et télécoms
    Inscrit en
    Novembre 2018
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Technicien réseaux et télécoms
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Novembre 2018
    Messages : 2
    Par défaut Nouvelle version de Qt : changements dans la syntaxe des signaux
    Bonjour,

    J'ai un souci avec la nouvelle version de QT pour utilisé les signaux/slots ( désolé si un sujet traite cette demande mais je n'ai pas trouvé de sujet qui en parle, je suis surement pas très bon pour chercher ).

    Je vous présente un exemple avec QNeworkAccessManager, Anciennement on faisait:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    connect(_manager,SIGNAL(sslErrors(QNetworkReply *, const QList<QSslError>),this,SLOT(monSlot(QNetworkReply *, const QList<QSslError> )
    maintenant avec la nouvelle version j'ai essayé ça, mais ça ne fonctionne pas:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    connect(_manager,&QNetworkAccessManager::sslErrors,this,SLOT(monSlot(QNetworkReply *, const QList<QSslError> )
    Pouvez vous me dire comment on fait pour récupérer les paramètres entre les signaux et slots ?

    En vous remerciant par avance,

  2. #2
    Candidat au Club
    Homme Profil pro
    Technicien réseaux et télécoms
    Inscrit en
    Novembre 2018
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Technicien réseaux et télécoms
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Novembre 2018
    Messages : 2
    Par défaut
    J'ai trouvé la solution ,il faut faire de cette manière:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    connect(_manager,&QNetworkAccessManager::SslErrors,this,&Maclasse::monSlot)
    En espérant que ça peut aider certain.

  3. #3
    Membre émérite
    Avatar de Daïmanu
    Homme Profil pro
    Développeur touche à tout
    Inscrit en
    Janvier 2011
    Messages
    736
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur touche à tout

    Informations forums :
    Inscription : Janvier 2011
    Messages : 736
    Par défaut
    Bonjour.

    Tu as trouvé par toi même, mais un peu de contexte ne fait pas de mal.

    Cette nouvelle syntaxe est disponible depuis Qt5 et apporte quelques avantages.
    Par exemple, la validité de la connexion est vérifiée lors de la compilation (et plus a l'étape d'après). Ça sera donc le compilateur qui lancera une erreur.
    Autre exemple, cette syntaxe permet de connecter un signal à une fonction lambda (fonctionnalité apparue avec C++11).

    Il semble il y avoir quelques inconvénients (eg. https://wiki.qt.io/New_Signal_Slot_Syntax), mais la nouvelle syntaxe complète l'ancienne, elle ne la remplace pas.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 28
    Dernier message: 18/05/2015, 11h10
  2. Migration 8.1 -> 10.3 : changement dans la gestion des 403
    Par Morgoth_fr dans le forum Weblogic
    Réponses: 0
    Dernier message: 31/10/2008, 15h45

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo