evaluateJavaScript 用于整个文件

evaluateJavaScript used for an entire file

我需要一个我的编辑器来评估我打开的任何 JS 文件中的 JS 代码。但是,它永远不会。尽管应用程序输出显示

    QIODevice::read: device not open

这是我的代码(mFilename 是保存打开文件的文件名的变量)

    QFile sFile(mFilename);
    QTextStream in(&sFile);
    text = in.readAll();
    sFile.close();

    ui->webView->page()->mainFrame()->evaluateJavaScript(text);

您忘记打开文件了。要打开它,您必须使用 QFile::open 方法。 如果您想阅读它,只需像这样调用 file.open:

sFile.open(QIODevice::ReadOnly);

您确实没有通过调用 QFile 构造函数打开文件。

所以,您的代码现在是:

QFile sFile(mFilename);
QTextStream in(&sFile);
sFile.open(QIODevice::ReadOnly);
text = in.readAll();
sFile.close();

ui->webView->page()->mainFrame()->evaluateJavaScript(text);