QSS样式及动画笔记

【参考】

  • https://zhuanlan.zhihu.com/p/120419417      Qss案例演示          
  • https://www.pressc.cn/63.html                       QT 动画框架
  • https://blog.csdn.net/redchairman/article/details/82012984              QT-智能QSS设计器
  • https://blog.csdn.net/xuancailinggan/article/details/50429840          自学QT之qss教程

【示例】

/*Qmenu Style Sheets*/
 QMenu {
     background-color: white; /* sets background of the menu 设置整个菜单区域的背景色,我用的是白色:white*/
     border: 1px solid white;/*整个菜单区域的边框粗细、样式、颜色*/
 }
 
 QMenu::item {
     /* sets background of menu item. set this to something non-transparent
         if you want menu color and menu item color to be different */
     background-color: transparent;
     padding:8px 32px;/*设置菜单项文字上下和左右的内边距,效果就是菜单中的条目左右上下有了间隔*/
     margin:0px 8px;/*设置菜单项的外边距*/
     border-bottom:1px solid #DBDBDB;/*为菜单项之间添加横线间隔*/
 }
 
 QMenu::item:selected { /* when user selects item using mouse or keyboard */
     background-color: #2dabf9;/*这一句是设置菜单项鼠标经过选中的样式*/
 }

label设置样式

ui->label->setStyleSheet("border-radius:15px;background-color:green;border-image:url(':/11.jpg')");

加载qss样式文件

QString qss;
QFile   qssFile(":/myqss/login.qss");   //qss文件在资源文件里
qssFile.open(QFile::ReadOnly);

if(qssFile.isOpen())
{
  qss = QLatin1String(qssFile.readAll());
  this->setStyleSheet(qss);
  qssFile.close();
  qDebug()<<"成功引入qss";
}

QPropertyAnimation动画效果

  • https://baijiahao.baidu.com/s?id=1625820499603807731&wfr=spider&for=pc
  • https://blog.csdn.net/kaida1234/article/details/82896611
QPropertyAnimation *pAnimation = new QPropertyAnimation(m_pLabel, "geometry");
pAnimation->setDuration(1000);
pAnimation->setStartValue(QRect(0, 0, 75, 25));
pAnimation->setEndValue(QRect(200, 130, 75, 25));
pAnimation->setEasingCurve(QEasingCurve::OutBounce);  // 缓和曲线风
pAnimation->start();

界面切换

  • https://blog.csdn.net/tiydy/article/details/83409726
  • https://www.cnblogs.com/victorywr/p/12284501.html

待续

猜你喜欢

转载自blog.csdn.net/baidu_41388533/article/details/114851170