簡體   English   中英

Qt打開第二個窗口

[英]Qt open second window

我無法在qt項目中打開新窗口/對話框窗體mainwindow。

打開功能:

    void MainWindow::on_btDodajProdukt_clicked()
{
    newDialog = new DodajProdukt(this);
    newDialog->show();

}

MainWindow包括:

#include "dodajprodukt.h"

MainWindow.h

    DodajProdukt *newDialog;

類DodajProdukt是在desinger中添加的新Window。

我收到此錯誤:

mainwindow.obj:-1:błąd:LNK2019:未解析的外部符號“ public:__ thiscall DodajProdukt :: DodajProdukt(class QWidget *)”(?? 0DodajProdukt @@ QAE @ PAVQWidget @@@@ Z)在函數“私有:無效:void __thiscall MainWindow :: on_btDodajProdukt_clicked(void)“(?on_btDodajProdukt_clicked @ MainWindow @@ AAEXXZ)

編輯:

dodajprodukt.cpp

    #include "dodajprodukt.h"
#include "ui_dodajprodukt.h"


DodajProdukt::DodajProdukt(QWidget *parent) :
    QDialog(parent),
    ui(new Ui::DodajProdukt)
{
    ui->setupUi(this);
}

DodajProdukt::~DodajProdukt()
{
    delete ui;
}

專業版檔案:

    QT       += core gui

greaterThan(QT_MAJOR_VERSION, 4): QT += widgets

TARGET = Hurtownia
TEMPLATE = app


SOURCES += main.cpp\
        mainwindow.cpp \
    dodajprodukt.cpp \
    listaproduktow.cpp

HEADERS  += mainwindow.h \
    dodajprodukt.h \
    listaproduktow.h

FORMS    += mainwindow.ui \
    dodajprodukt.ui \
    listaproduktow.ui

右鍵單擊項目,然后:清理,運行qmake和重建為我修復它

您必須將與DodajProdukt相關的所有文件添加到您的.pro文件中(如果使用qmake):

對於在設計器中創建的.ui文件:

FORMS += dodajprodukt.ui # assuming that's how it's called

而且您顯然也有.h / .cpp文件:

HEADERS += dodajprodukt.h
SOURCES += dodajprodukt.cpp

我有同樣的錯誤。 創建一個新的項目並復制代碼。 然后創建一個簡單的示例代碼,以檢查此方法是否有效。

我也有同樣的問題。

我在刪除.pro.user文件並刪除項目構建文件夾后將其修復

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM