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

Qt Discussion :

Supprimer les balises HTML dans un QString


Sujet :

Qt

  1. #1
    Membre confirmé
    Homme Profil pro
    programmation
    Inscrit en
    Janvier 2020
    Messages
    69
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : programmation

    Informations forums :
    Inscription : Janvier 2020
    Messages : 69
    Par défaut Supprimer les balises HTML dans un QString
    bonjour j'ai une chaine de caractère formater avec du html et je voudrais le passe en text non formater ( sans les balise)
    pour l'instant j'ai fait ca :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
            QLabel *label = new QLabel(nullptr);
            label->setTextFormat(Qt::RichText);
            label->setText(message);
            label->setTextFormat(Qt::PlainText);//je le passe en texte non formater
    mais ca ne fonctionne pas.
    avez vous un moyen pour enlever les balise html d'une chaine de caractère ?
    merci d'avance

  2. #2
    Membre Expert
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juin 2011
    Messages
    760
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Juin 2011
    Messages : 760
    Par défaut
    Je pense que ceci ferra l'affaire: https://doc.qt.io/qt-5/qtextdocument...ml#toPlainText

  3. #3
    Membre confirmé
    Homme Profil pro
    programmation
    Inscrit en
    Janvier 2020
    Messages
    69
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : programmation

    Informations forums :
    Inscription : Janvier 2020
    Messages : 69
    Par défaut
    bonjour et merci pour la reponse rapide
    cella ne fonctionne pas :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    QTextDocumentFragment::toPlainText(message)
    erreur : incomplete type 'QTextDocumentFragment' named in nested name specifier
    quelle est la sytaxe ?

  4. #4
    Expert confirmé
    Homme Profil pro
    Analyste/ Programmeur
    Inscrit en
    Juillet 2013
    Messages
    4 772
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Analyste/ Programmeur

    Informations forums :
    Inscription : Juillet 2013
    Messages : 4 772
    Par défaut
    incomplete type 'QTextDocumentFragment' t'indique qu'il doit manquer l'include qui va bien #include <QTextDocumentFragment>.
    Il faut tout lire

  5. #5
    Membre confirmé
    Homme Profil pro
    programmation
    Inscrit en
    Janvier 2020
    Messages
    69
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : programmation

    Informations forums :
    Inscription : Janvier 2020
    Messages : 69
    Par défaut
    oui je l'ai deja coriger mais j'ai oublier de le reposter
    mais :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    QTextDocumentFragment::toPlainText(message)
    donne ca :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    erreur : call to non-static member function without an object argument

  6. #6
    Expert confirmé
    Homme Profil pro
    Analyste/ Programmeur
    Inscrit en
    Juillet 2013
    Messages
    4 772
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Analyste/ Programmeur

    Informations forums :
    Inscription : Juillet 2013
    Messages : 4 772
    Par défaut
    Et c'est quoi que tu ne comprends pas dans l'erreur ?
    C'est clair comme du cristal : la fonction toPlainText n'est pas 1 fonction statique.

    Il faut avoir 1 objet de type QTextDocumentFragment et appeler la fonction.

  7. #7
    Membre confirmé
    Homme Profil pro
    programmation
    Inscrit en
    Janvier 2020
    Messages
    69
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : programmation

    Informations forums :
    Inscription : Janvier 2020
    Messages : 69
    Par défaut
    bonjour comment convertire un QString en QTextDocumentFragment ?
    crella ne fonctionne pas :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    QTextDocumentFragment test = message;

  8. #8
    Membre Expert
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juin 2011
    Messages
    760
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Juin 2011
    Messages : 760
    Par défaut
    Tout est dans la page de la doc, il faut la lire. Mais je te conseille aussi de suivre un cours sur le C++, il y a visiblement de grosses lacunes.

  9. #9
    Membre confirmé
    Homme Profil pro
    programmation
    Inscrit en
    Janvier 2020
    Messages
    69
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : programmation

    Informations forums :
    Inscription : Janvier 2020
    Messages : 69
    Par défaut
    bonjour je tien note et je referait le cour...
    pouvez vous m'aide : ce code ne ressort rien :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
            message = "<p><size=\"15\">machin</font><size=\"10\">bonjour</font></p><br><br>";
            QTextDocumentFragment text;
            text.fromHtml(message);
            qDebug()  << "message:" << text.toPlainText();
    ca resort dans QDebug message: ""

  10. #10
    Invité
    Invité(e)
    Par défaut
    Bonjour,

    QTextDocumentFragment::fromHtml() est une fonction statique qui te retourne l'objet QTextDocumentFragment à utiliser. Là, ton text reste inchangé (= vide), car indépendant de l'objet retourné.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    message = R"(<p><size="15">machin</font><size="10">bonjour</font></p><br><br>)";
    auto text = QTextDocumentFragment::fromHtml(message);
    qDebug()  << "message:" << text.toPlainText();

  11. #11
    Membre confirmé
    Homme Profil pro
    programmation
    Inscrit en
    Janvier 2020
    Messages
    69
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : programmation

    Informations forums :
    Inscription : Janvier 2020
    Messages : 69
    Par défaut
    oui merci ceci fonctionne a merveille 🤩 :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
                auto text = QTextDocumentFragment::fromHtml(message);
                qDebug()  << "message:" << text.toPlainText();
                sticon->showMessage("",text.toPlainText(),QSystemTrayIcon::Information,2000);
    sujet resolut

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

Discussions similaires

  1. [TinyMCE] Comment supprimer les balises html
    Par Magjjy dans le forum Bibliothèques & Frameworks
    Réponses: 3
    Dernier message: 10/06/2011, 14h57
  2. [RegEx] Supprimer les balises HTML
    Par Anduriel dans le forum Langage
    Réponses: 5
    Dernier message: 10/04/2008, 16h51
  3. [RegEx] probleme de reference arrière pour supprimer les balises html
    Par Galeenet dans le forum Langage
    Réponses: 1
    Dernier message: 16/10/2007, 23h02
  4. Supprimer les balises HTML dans un TextBox
    Par calagan99 dans le forum ASP.NET
    Réponses: 9
    Dernier message: 04/07/2007, 16h38
  5. [RegEx] Supprimer les balises HTML
    Par hisy dans le forum Langage
    Réponses: 4
    Dernier message: 19/03/2006, 17h10

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