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();
    }
  • 相关阅读:
    我给老师发的邮件
    [LeetCode]Sum Root to Leaf Numbers
    [LeetCode]Binary Tree Inorder Traversal
    [LeetCode]Merge Sorted Array
    [LeetCode]Unique Paths II
    [LeetCode]Unique Paths
    [LeetCode]Sort Colors
    [LeetCode]Balanced Binary Tree
    [LeetCode]Valid Palindrome
    [LeetCode]Binary Tree Maximum Path Sum
  • 原文地址:https://www.cnblogs.com/ike_li/p/11543601.html
Copyright © 2011-2022 走看看