N'afficher qu'une partie du site
Hello les gens !
Alors voilà, j'aimerai n’afficher qu'une partie d'un site web avec Qt WebEngine.
Du coup, j'ai eu l'idée d'utiliser un script JS qui applique un "display:none" aux éléments que je souhaite cacher.
Ca fonctionne bien, mais le soucis s'est le fonctionnement...la page s'affiche normalement, on la vois quelques seconde -> puis le script s'execute et cache les parties souhaitée. Se que j'aimerai, s'est que le site s'affiche dirrectement avec les parties cachées
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
| FenetrePrincipale::FenetrePrincipale(QWidget *parent) :
QMainWindow(parent),
ui(new Ui::FenetrePrincipale)
{
ui->setupUi(this);
view = new QWebEngineView(this);
view->load(QUrl("<a href="http://monsite.com" rel="nofollow">www.monsite.com</a>"; ));
connect(view, SIGNAL(loadFinished(bool)), SLOT(javascript()));
}
void FenetrePrincipale::javascript()
{
QString code = "var classes = document.querySelectorAll('.LayoutWrap, .CurrentMenu-champion'); for(i = 0; i < classes.length; i++) { classes[i].style.display = 'none'; }";
view->page()->runJavaScript(code);
} |
Je suis obligé de faire une connection, car sinon, je tombe sur un about:blank et pas sur monsite.com:
Code:
1 2 3 4 5 6
| view = new QWebEngineView(this);
view->load(QUrl("<a href="http://monsite.com" rel="nofollow">www.monsite.com</a>"; ));
QString code = "document.write(window.location.toString());";
view->page()->runJavaScript(code); |
Merci pour votre aide !