设置QPushButton的平面与突出(遍历控件)

#include "ui_maindialog.h"
#include "maindialog.h"
#include 
#include 
#include 
#include 

MainDialog::MainDialog(QWidget *parent) :
    QDialog(parent),
    ui(new Ui::MainDialog)
{
    ui->setupUi(this);
    setWindowFlags(Qt::WindowStaysOnTopHint);
    /*遍历界面上所有button*/
    QList button = this->findChildren();
    qDebug() << button.count();
    for(int i=0; i < button.count(); i++)//通过i的范围确定需要设置哪些button
    {
        setDynamicImage(button.at(i));
    }
}

void MainDialog::setDynamicImage(QPushButton *button)
{
    /*定义两种状态(鼠标进入button/退出button)*/
    QState *inside = new QState;
    inside->assignProperty(button,"flat", "false");//设置button为凸起
    QState *outside = new QState;
    outside->assignProperty(button, "flat", "true");//设置button为平面
    /*把进入、退出事件与button关联*/
    QEventTransition *enterTransition = new QEventTransiti

你可能感兴趣的:(Qt学习资料)