• Почему IE рандомно обрезает текст?

    @enurich Автор вопроса
    Решение найдено. У ie баг с text-shadow: ссылка. Убрал и все заработало.
    Ответ написан
    1 комментарий
  • Как подключить Webkit в Qt 5.3.0?

    EXL
    @EXL
    Энтузиаст
    Пробовал подключить различные библиотеки:
    #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"));
    }

    Удачи!
    Ответ написан
    Комментировать