簡體   English   中英

將自定義 QWidget 添加到另一個 QWidget

[英]Add custom QWidget to another QWidget

我正在嘗試將一個對象(從QWidget繼承)作為子項添加到另一個QWidget ,如下所示,它與另一個普通QWidget實例完美配合,但不適用於我的自定義類,知道為什么嗎?

fenetre.h

#ifndef FENETRE_H
#define FENETRE_H

#include <QWidget>
#include <QMouseEvent>

class Fenetre : public QWidget
{
   Q_OBJECT
public:
   Fenetre();
};

#endif // FENETRE_H

fenetre.cpp

#include "fenetre.h"

Fenetre::Fenetre() : QWidget()
{

}

主程序

#include <iostream>
#include <QApplication>
#include <QWidget>
#include "fenetre.h"

int main(int argc, char *argv[])
{
    QApplication app(argc,argv);

    QWidget window;
    window.setFixedSize(800,600);

    //This appears
    QWidget rec1;
    rec1.setParent(&window);
    rec1.setFixedSize(100,100);
    rec1.move(400,200);
    rec1.setStyleSheet("background-color: red");

    //This one not
    Fenetre rec2;
    rec2.setParent(&window);
    rec2.setFixedSize(100,100);
    rec2.move(200,200);
    rec2.setStyleSheet("background-color: green");

    window.show();

    return app.exec();
}

PS:我在平台上做了研究,但大多數答案都談到了布局的使用。 謝謝 !

你想念父母:

//header .h
class Fenetre : public QWidget
{
   Q_OBJECT
public:
   Fenetre(QWidget *parent = 0);
};

//source .cpp
Fenetre::Fenetre(QWidget *parent) : QWidget(parent)
{

}

暫無
暫無

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

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