簡體   English   中英

構建期間的 Q_OBJECT 宏問題

[英]Q_OBJECT macro issue during build

我正在使用QT進行項目。 為了將它與 premake 鏈接,我克隆了生成 QT 解決方案premake-qt的插件。 一般來說,在使用 qt 時效果很好。 但我需要創建自定義信號,為此,我必須在我的 header 文件中添加Q_OBJECT 這是文件:

#pragma once
#ifndef _WINDOW_H_
#define _WINDOW_H_

#include <QApplication>
#include <QWidget>
#include <QPushButton>
#include <QProgressBar>
#include <QSlider>
#include <QFileDialog>
#include <QtDebug>
#include <QFile>
#include <QTextStream>
#include <QMenu>

class WindowUI : public QWidget
{
    Q_OBJECT

    enum class State {
        Save = 0,
        Export = 1,
    };
... // rest of header

所以沒有Q_OBJECT一切正常,但是當我用它構建時,我有一個錯誤。

>Moc'ing Window.h
>the specified path cannot be found.

我發現它在 vscode 樹中生成了moc_Window.argsmoc_Window.cpp.cpp不在我的工作目錄中。 如果需要,我可以提供我的premake.lua配置文件,如果缺少某些東西,我會在其中鏈接 QT。 添加Q_OBJECT時是否必須在我的項目上運行qmake 樹

嘗試從 VS 項目中刪除 class 並將其添加回來。 在將普通 class 更改為基於 QObject(包括 Q_OBJECT 宏)時,我遇到了類似的問題。 我認為這個問題與 Qt VS 插件如何進行 moc'cing 有關。

暫無
暫無

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

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