QWidget setStyleSheet 적용 관련 질문입니다... > QT 질문/답변

본문 바로가기

사이트 내 전체검색

QT 질문/답변

QT/Embedded QWidget setStyleSheet 적용 관련 질문입니다...

작성일 19-02-15 20:50

페이지 정보

작성자 no_profile QT왕초보보보보보 쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 조회 892회 댓글 0건

본문

QWidget에 style sheet를 적용하는데 질문이 있습니다.

QWidget을 상속받는 클래스 2개가 있습니다.
class base_widget : public QWidget
class thema_menu : public QWidget

them_menu는 자식이고, base_widget은 부모입니다.
아래 코드를 보시면 알 수 있습니다.

-------------------------------------------------------
<main.cpp>
#include "base_widget.h"
#include <QApplication>

int main(int argc, char *argv[])
{
    QApplication a(argc, argv);
    base_widget baseWidget;
    baseWidget.show();

    return a.exec();
}
-------------------------------------------------------
<base_widget.cpp>
#include "base_widget.h"
#include "thema_menu.h"

thema_menu * themaMenu;

base_widget::base_widget(QWidget *parent) : QWidget(parent)
{
    this->setWindowFlags( Qt::FramelessWindowHint );
    this->setWindowState( Qt::WindowMaximized );
    this->setStyleSheet("QWidget {background-color: rgba(0,0,0,0)}");


    themaMenu = new thema_menu( );
    themaMenu->setObjectName("gg");
//    themaMenu->setStyleSheet("QFrame#gg{background-color: red}");
    themaMenu->setStyleSheet("QWidget#gg{background-color: red}");
    themaMenu->setParent(this);
    themaMenu->setGeometry(0,0,400,480);    // half size
    themaMenu->show();
}
------------------------------------------------------------------------------------------

위 코드를 장치에서 실행시켜보면 themaMenu가 나타나질 않습니다.
하지만 themaMenu를 QFrame으로 상속시켜서 실행시켜보면
style sheet가 적용된 themaMenu가 나타납니다...

QWidget으로는 themaMenu 를 확인 할 수 없는건가요?? 그리고 이유도 알려주시면 감사하겠습니다!!

응??


추천0

댓글목록

등록된 댓글이 없습니다.

전체 5,773건 1 페이지
게시물 검색
Copyright © 소유하신 도메인. All rights reserved.
PC 버전으로 보기