首页 文章

C / Qt - 来自MainWindow的错误对话 - 错误LNK2019 - LNK2001:未解析的外部符号

提问于
浏览
0

基本上,代码的目标是在单击按钮后打开包含QWebView(带有一些内容)的对话框

这些是我做的:

mainwindow.h:

class MainWindow : public QMainWindow, public Ui::MainWindowUi
{
    ...
    private slots:
    void on_ViewDatabase_clicked();
    ...
}

mainwindow.cpp:

#include "mainwindow.h"
#include "onlinedb.h"



void MainWindow::on_ViewDatabase_clicked()
{

    OnlineDB dlg(this);
    dlg.exec();
}

onlinedb.h:

#ifndef OnlineDB_H
#define OnlineDB_H


#include "ui_onlinedb.h"
#include <QDialog>


class MainWindow;

class OnlineDB : public QDialog, public Ui::OnlineDB
{
    Q_OBJECT

public:
    OnlineDB(LkMainWindow *parent);
    ~OnlineDB();

private:
    MainWindow  *MainWindow;

};


#endif

onlinedb.cpp:

#include "onlinedb.h"
#include "mainwindow.h"

///////////////////////////////////////////////////////////////////////////////
//
// OnlineDB class constructor
//
// Create a OnlineDB
//
OnlineDB::OnlineDB(MainWindow *parent) : QDialog(parent), MainWindow(parent)
{
    setupUi(this);
    QUrl url("http://google.com"); //whatever
    webView->load(url);
}



///////////////////////////////////////////////////////////////////////////////
//
// OnlineDB class destructor
//
// Clean up the OnlineDB
//
OnlineDB::~OnlineDB()
{

}

我收到了几个链接错误

Plz有人可以提供帮助吗?

3>链接... 3> onlinedb.obj:错误LNK2019:未解析的外部符号“_declspec(dllimport)public:void thiscall QWebView :: load(class QUrl const&)”( imp?load @ QWebView @@ QAEXABVQUrl @@@ Z)函数"public: __thiscall OnlineDB::OnlineDB(class LkMainWindow *)"(?? 0OnlineDB @@ QAE @ PAVLkMainWindow @@@ Z)3> onlinedb.obj:错误LNK2001:未解析的外部符号"public: virtual struct QMetaObject const * __thiscall OnlineDB::metaObject(void)const "(?metaObject @ OnlineDB @@ UBEPBUQMetaObject @@ XZ)3> onlinedb.obj :错误LNK2001:未解析的外部符号"public: virtual void * __thiscall OnlineDB::qt_metacast(char const *)"(?qt_metacast @ OnlineDB @@ UAEPAXPBD @ Z)3> onlinedb.obj:错误LNK2001:未解析的外部符号"public: virtual int __thiscall OnlineDB::qt_metacall(enum QMetaObject::Call,int,void * *)"(?qt_metacall @ OnlineDB @@ UAEHW4Call @ QMetaObject @@ HPAPAX @ Z)3> onlinedb.obj:错误LNK2019:未解析的外部符号“_declspec(dllimport)public:void thiscall QWebView :: setUrl(class QUrl const&)”( imp?setUrl @ QWebView @@ QAEXABVQUrl @@@ Z)在函数"public: void __thiscall Ui_OnlineDB::setupUi(class QDialog *)"中引用(? setupUi @Ui_OnlineDB @@ QAEXPAVQDialog @@@ Z)3> onlinedb.obj:错误LNK2019:未解析的外部符号"__declspec(dllimport) public: __thiscall QWebView::QWebView(class QWidget *)"(_imp ?? 0QWebView @@ QAE @ PAVQWidget @@@ Z)在function "public: void __thiscall Ui_OnlineDB::setupUi(class QDialog *)"(?setupUi @Ui_OnlineDB @@ QAEXPAVQDialog @@@ Z)3> onlinedb.obj:错误LNK2001:未解析的外部符号"public: virtual struct QMetaObject const * __thiscall QWebView::metaObject(void)const "(?metaObject @ QWebView @@ UBEPBUQMetaObject @@ XZ)3> onlinedb.obj:错误LNK2001:未解决外部符号"public: virtual void * __thiscall QWebView::qt_metacast(char const *)"(?qt_metacast @ QWebView @@ UAEPAXPBD @ Z)3> onlinedb.obj:错误LNK2001:未解析的外部符号"public: virtual int __thiscall QWebView::qt_metacall(enum QMetaObject::Call,int,void * *)"(?qt_metacall @ QWebView @@ UAEHW4Call @ QMetaObject @@ HPAPAX @ Z)3> onlinedb.obj:error LNK2001:未解析的外部符号"public: virtual bool __thiscall QWebView::event(class QEvent *)"(?event @ QWebView @@ UAE_NPAVQEvent @@@ Z)3> onlinedb.obj:错误LNK2001:未解析的外部符号"public: virtual class QSize __thiscall QWebView::sizeHint(void)const "(?sizeHint @ QWebView @@ UBE?AVQSize @@ XZ)3> onlinedb . obj:错误LNK2001:未解析的外部符号"protected: virtual void __thiscall QWebView::mousePressEvent(class QMouseEvent *)"(?mousePressEvent @ QWebView @@ MAEXPAVQMouseEvent @@@ Z)3> onlinedb.obj:错误LNK2001:未解析的外部符号"protected: virtual void __thiscall QWebView::mouseReleaseEvent(class QMouseEvent *)"(?mouseReleaseEvent @ QWebView @@ MAEXPAVQMouseEvent @@@ Z)3> onlinedb.obj:错误LNK2001:未解析的外部符号"protected: virtual void __thiscall QWebView::mouseDoubleClickEvent(class QMouseEvent *)"(?mouseDoubleClickEvent @ QWebView @@ MAEXPAVQMouseEvent @@ @Z)3> onlinedb.obj:错误LNK2001:未解析的外部符号"protected: virtual void __thiscall QWebView::mouseMoveEvent(class QMouseEvent *)"(?mouseMoveEvent @ QWebView @@ MAEXPAVQMouseEvent @@@ Z)3> onlinedb.obj:错误LNK2001:未解析的外部符号"protected: virtual void __thiscall QWebView::wheelEvent(class QWheelEvent *)"(?wheelEvent @ QWebView @@ MAEXPAVQWheelEvent @@@ Z)3> onlinedb.obj:错误LNK2001:未解析的外部符号"protected: virtual void __thiscall QWebView::keyPressEvent(class QKeyEvent *)"(?keyPressEvent @ QWebView @@ MAEXPAVQKeyEvent @@@ Z)3> onlinedb.obj:错误LNK2001:未解析的外部符号"protected: virtual void __thiscall QWebView::keyReleaseEvent(class QKeyEvent *)"(?keyReleaseEvent @ QWebView @ @MAEXPAVQKeyEvent @@@ Z)3> onlinedb.obj:错误LNK2001:未解析的外部符号"protected: virtual void __thiscall QWebView::focusInEvent(class QFocusEvent *)"(?focusInEvent @ QWebView @@ MAEXPAVQFocusEvent @@@ Z)3> onlinedb.obj:错误LNK2001:未解析的外部符号"protected: virtual void __thiscall QWebView::focusOutEvent(class QFocusEvent *)"(?focusOutEvent @ QWebView @@ MAEXPAVQFocusEvent @@@ Z)3> onlinedb.obj:错误LNK2001:未解析的外部符号"protected: virtual void __thiscall QWebView::paintEvent(class QPaintEvent *)"(?paintEvent @ QWebView @@ MAEXPAVQPaintEvent @@@ Z)3> onlinedb.obj:错误LNK2001:未解析的外部符号"protected: virtual void __thiscall QWebView::resizeEvent(class QResizeEvent *)"(? resizeEvent @ QWebView @@ MAEXPAVQResizeEvent @@@ Z)3> onlinedb.obj:错误LNK2001:未解析的ex ternal symbol "protected: virtual void __thiscall QWebView::contextMenuEvent(class QContextMenuEvent *)"(?contextMenuEvent @ QWebView @@ MAEXPAVQContextMenuEvent @@@ Z)3> onlinedb.obj:错误LNK2001:未解析的外部符号"protected: virtual void __thiscall QWebView::dragEnterEvent(class QDragEnterEvent *)"(?dragEnterEvent @ QWebView @@ MAEXPAVQDragEnterEvent @@@ Z)3> onlinedb.obj:错误LNK2001 :未解析的外部符号"protected: virtual void __thiscall QWebView::dragMoveEvent(class QDragMoveEvent *)"(?dragMoveEvent @ QWebView @@ MAEXPAVQDragMoveEvent @@@ Z)3> onlinedb.obj:错误LNK2001:未解析的外部符号"protected: virtual void __thiscall QWebView::dragLeaveEvent(class QDragLeaveEvent *)"(?dragLeaveEvent @ QWebView @@ MAEXPAVQDragLeaveEvent @@@ Z)3> onlinedb.obj:错误LNK2001:未解析的外部符号"protected: virtual void __thiscall QWebView::dropEvent(class QDropEvent *)"(?dropEvent @ QWebView @@ MAEXPAVQDropEvent @@@ Z)3> onlinedb.obj:错误LNK2001:未解析的外部符号"protected: virtual void __thiscall QWebView::changeEvent(class QEvent *)"(?changeEvent @ QWebView @@ MAEXPAVQEvent @@@ Z)3> onlinedb . obj:错误LNK2001:未解析的外部符号"protected: virtual void __thiscall QWebView::inputMethodEvent(class QInputMethodEvent *)"(?inputMethodEvent @ QWebView @@ MAEXPAVQInputMethodEvent @@@ Z)3> onlinedb.obj:错误LNK2001:未解析的外部符号"public: virtual class QVariant __thiscall QWebView::inputMethodQuery(enum Qt::InputMethodQuery)const "(?inputMethodQuery @ QWebView @@ UBE?AVQVariant @@ W4InputMethodQuery @ Qt @@@ Z)3> onlinedb.obj:错误LNK2001:未解决的e xternal symbol "protected: virtual bool __thiscall QWebView::focusNextPrevChild(bool)"(?focusNextPrevChild @ QWebView @@ MAE_N_N @ Z)3> onlinedb.obj:错误LNK2001:未解析的外部符号“protected:virtual class QWebView * _thiscall QWebView :: createWindow(enum QWebPage :: WebWindowType)" (?createWindow@QWebView@@MAEPAV1@W4WebWindowType@QWebPage@@@Z) 3>onlinedb.obj : error LNK2019: unresolved external symbol " _declspec(dllimport) public:virtual thiscall QWebView :: ~QWebView(void)“( imp _ ?? 1QWebView @@ UAE @ XZ)在函数"public: virtual void * __thiscall QWebView::`scalar deleting destructor'(unsigned int)"中引用(?? _ GQWebView @@ UAEPAXI @ Z)

1 回答

  • 0
    unresolved external symbol "public: virtual int __thiscall OnlineDB::qt_metacall(enum QMetaObject::Call,int,void * *)
    

    你没有moc你的 OnlineDB 或你没有链接目标文件 .

    error LNK2019: unresolved external symbol "__declspec(dllimport) public: void _thiscall QWebView::load(class QUrl const &)"
    

    您尚未链接到所有必需的Qt库 . QWebView 位于 QtWebKit 库中 .

相关问题