-1

这是一个非常愚蠢的问题,但我不明白为什么当我使用时我的 qt 控制台应用程序中没有显示任何内容QWebpage

这是我的基本代码:

#include <QCoreApplication>
#include <QtWebKitWidgets>
#include <QDebug>
#include <stdio.h>
#include <iostream>

int main(int argc, char *argv[])
{
    QCoreApplication a(argc, argv);

    /*QWebPage page;
    page.settings()->setAttribute(QWebSettings::LocalStorageEnabled, true);
    page.settings()->setAttribute(QWebSettings::AutoLoadImages, true);
    page.settings()->setAttribute(QWebSettings::JavascriptEnabled, true);
    page.settings()->setAttribute(QWebSettings::PrintElementBackgrounds, true);
    page.settings()->setAttribute(QWebSettings::PluginsEnabled, true);
    page.mainFrame()->load(QUrl("http://myflowerpower.parrot.com/#plantdb/3"));
    qDebug () << "source html : \n";
    qDebug() << page.currentFrame()->toHtml();
    QString htmlResult = page.currentFrame()->toHtml();*/

    printf("test");
    std::cout << "test std::cout\n";
    qDebug() << "Debug Message";
    qWarning() << "Warning Message";
    qCritical() << "Critical Error Message";
    bool result = a.exec();

    return result;
}

如果我取消注释代码,则不会显示任何内容,但是如果我注释 QWebpage 内容,则可以正常工作。有什么想法吗?

4

1 回答 1

2

QCoreApplication无法处理 GUI 元素。

您需要使用QApplication来支持 GUI 和事件框架。

并确保您的.pro文件中有所需的内容。

QT += widgets webkitwidgets

希望有帮助。

于 2015-01-20T02:46:05.283 回答