• 3530阅读
  • 1回复

[提问]QT Creator里可用的构造函数,在VS2015里报错 [复制链接]

上一主题 下一主题
离线liujx
 

只看楼主 倒序阅读 楼主  发表于: 2016-10-08
VS2015已经集成QT
源代码里的构造函数是这样的:

ShapeWidget::ShapeWidget(QWidget *parent) :
    QWidget(parent),
    ui(new Ui::ShapeWidget)
{
    //ui = new Ui::ShapeWidget();
    setWindowTitle("Irregular widget");
    if (red == 1) {
        m_Pixmap.load(":/red2.png");
    }
    else {
        m_Pixmap.load(":/test.png");
    }
    resize(m_Pixmap.size());
    setMask(m_Pixmap.mask());
    m_BandWidth = 360;

    ui->setupUi(this);

}

其中 ui(new Ui::ShapeWidget) VS2015报错: Incomplete type is not allowed.


相应的头文件是:

namespace Ui {
    class ShapeWidget;
}

class ShapeWidget : public QWidget
{
    Q_OBJECT

public:
    explicit ShapeWidget(QWidget *parent = 0);
    //ShapeWidget(QWidget * parent = 0);
    //ShapeWidget(QWidget * parent);
    ~ShapeWidget();

protected:
    void mousePressEvent(QMouseEvent *event);
    void mouseMoveEvent(QMouseEvent *event);
    void paintEvent(QPaintEvent *event);
    void enterEvent(QEvent *event);
    void leaveEvent(QEvent *event);

private:
    Ui::ShapeWidget *ui;
    QPoint m_CurrentPos;
    QPixmap m_Pixmap;
};
离线liujx

只看该作者 1楼 发表于: 2016-10-08
这个构造函数是按网上常见的QT的UI的构造函数写的,在最新版QT Creator里运行良好,但在VS2015里却编译报错。
我被卡了很久,还是没有头绪。
快速回复
限100 字节
 
上一个 下一个