背景:需要在qt的qwebengineview中显示根据需要显示不同的网页,网页由xml和xsl实现。
问题:怎么在加载时完成含参的初始化
实现:
view->page()->runJavaScript(QString("window.onload = function (){test('%1')}").arg(ruleName));
解释:
在执行runJavaScript直接执行将window.onload作为代码块,然后通过arg完成传参。
QT读取xml
void MainWindow::readerXml(QString dev_xml_dir)
{
QFile file(dev_xml_dir);//
if(!file.open(QFile::ReadOnly|QFile::Text))
{
qDebug()<<"cannot open file";
}
else {
qDebug()<<"file opened!";
}
QXmlStreamReader reader;
reader.setDevice(&file);
while(!reader.atEnd())
{
QXmlStreamReader::T