Пробовал подключить различные библиотеки:
#include
#include
Во-первых, а кто вам сказал, что таким образом подключаются библиотеки в C++? Так только подключаются объявления классов и их методов. Библиотеки вы таким образом к проекту не подключите и следовательно получите закономерную ошибку линковки "
undefined reference to ...". Это полностью логично, поскольку объявления вы подключили, а их реализацию - нет. Кстати, эти строки вам вообще не нужны, удалите их, они не возымеют должного эффекта, поскольку уже есть в "ui_MainWindow.h", откройте этот файл и изучите его заголовок.
Во-вторых, вы используете слишком старую документацию, видимо, ещё для Qt 4, хотя пользуетесь Qt 5. Это заметно по:
http://www.trolltech.com/
и по:
#include <QWebView>
без префикса. Обновите вашу документацию на актуальную или поставьте Qt 4. Qt 5 был разбит на множество частей, Qt 4 более монолитен. Поэтому WebView вынесли в Qt 5 в отдельную библиотеку webkitwidgets.
В-третьих, сайт
www.trolltech.com давно мертв.
В вашем случае для получения полностью работоспособного приложения следует в *.pro файле определить:
QT += core gui webkit webkitwidgets
и убрать:
#include <QtWebKitWidgets/QWebView>
#include <QtWebKit>
Оттуда, куда вы это сами вставили.
Полностью рабочее приложение, компилирующееся на Qt 5 будет выглядеть как-то так:
project.pro:
#-------------------------------------------------
#
# Project created by QtCreator 2014-06-09T02:41:10
#
#-------------------------------------------------
QT += core gui webkit webkitwidgets
greaterThan(QT_MAJOR_VERSION, 4): QT += widgets
TARGET = untitled3
TEMPLATE = app
SOURCES += main.cpp\
MainWindow.cpp
HEADERS += MainWindow.h
FORMS += MainWindow.ui
main.cpp:
#include "MainWindow.h"
#include <QApplication>
int main(int argc, char *argv[])
{
QApplication a(argc, argv);
MainWindow w;
w.show();
return a.exec();
}
mainwindow.h:
#ifndef MAINWINDOW_H
#define MAINWINDOW_H
#include <QMainWindow>
namespace Ui {
class MainWindow;
}
class MainWindow : public QMainWindow
{
Q_OBJECT
public:
explicit MainWindow(QWidget *parent = 0);
~MainWindow();
private:
Ui::MainWindow *ui;
private slots:
void on_pushButton_clicked();
};
#endif // MAINWINDOW_H
mainwindow.cpp:
#include "MainWindow.h"
#include "ui_MainWindow.h"
MainWindow::MainWindow(QWidget *parent) :
QMainWindow(parent),
ui(new Ui::MainWindow)
{
ui->setupUi(this);
}
MainWindow::~MainWindow()
{
delete ui;
}
void MainWindow::on_pushButton_clicked()
{
ui->webView->setUrl(QUrl("http://www.habrahabr.ru"));
}
Удачи!