zoukankan      html  css  js  c++  java
  • Qt qss 动态属性-不同条件不同显示

    一、

    1.为了用户界面外观的动态变化,属性选择器可以与动态属性组合使用。

    2.当一个属性值变化时,所引用的样式不会自动更新。相反地,必须手动触发更新才会生效。
    unpolish()用于清理之前的样式,而polish()则用于添加新的样式。

    二、使用举例

      qss

    QFrame#frmPreImg[selected=false]{
        border:none;
        background-color:#D8DFEA;
    }
    QFrame#frmPreImg[selected=true]{
        border:4px solid #32CD32;
        background-color:#D8DFEA;
    }

    使用

          m_frmPreImg1->setProperty("selected",true);
          m_frmPreImg1->style()->unpolish(m_frmPreImg1);
          m_frmPreImg1->style()->polish(m_frmPreImg1);

    m_frmPreImg1->update();

    qss

    QLabel#lblConnectStatusStyle[connected="close"]{
        background:url(:/images/gray.png) no-repeat;
    }
    QLabel#lblConnectStatusStyle[connected="ok"]{
        background:url(:/images/green.png) no-repeat;
    }
    void SerialPortWidget::showConnectStatus(bool isConnected)
    {
        if(isConnected)
        {
            lblConnectStatus->setProperty("connected","ok");
        }
        else
        {
           lblConnectStatus->setProperty("connected","close");
        }
        lblConnectStatus->style()->unpolish(lblConnectStatus);
        lblConnectStatus->style()->polish(lblConnectStatus);
        lblConnectStatus->update();
    }
  • 相关阅读:
    Codeforces Round #375 (Div. 2)
    ACM之路(19)—— 主席树初探
    CodeForces 722D Generating Sets
    CodeForces 721D Maxim and Array
    心情--2014区域赛
    【N-Quens II】cpp
    【N-Queens】cpp
    【Unique Paths II】cpp
    【Unique Paths】cpp
    【Palindrome Partitioning】cpp
  • 原文地址:https://www.cnblogs.com/ike_li/p/11543601.html
Copyright © 2011-2022 走看看