当前位置:   article > 正文

qt学习之button按钮和label标签的样式设置及相关问题_qt更改页面所有按钮样式

qt更改页面所有按钮样式

 1、代码方式设置鼠标滑过按钮更改Text文本颜色

  1. my_pbtn_ = new QPushButton;
  2. my_pbtn_->setStyleSheet("QPushButton:hover{color:red;}"
  3. "QPushButton:pressed{color:red;}"
  4.                     "QPushButton{color:black; background-color:transparent;border:none;}");

2、代码方式设置鼠标滑过按钮更改按钮样式

  1. my_pbtn_ = new QPushButton;
  2. my_pbtn_->setStyleSheet("QPushButton:hover{background-color:rgba(0,0,0,10%);border:1px solid rgb(196,196,188);}"
  3.   "QPushButton:pressed{background-color:rgba(0,0,0,20%);border:1px solid rgb(196,196,188);}"
  4.                      "QPushButton{background-color:transparent;border:1px solid rgb(196,196,188);}");
  • 对于ui新建的按钮,若出现鼠标按下后保持,不回弹的问题,可以在ui中选择button并取消勾选按钮的checkable和autoExclusive这两个属性。即可修改为鼠标滑过、按下按钮均改变颜色,离开之后,按钮保持弹起,恢复原状。

3、设置按钮、label风格

  • 设置图标
    1. // 按钮设置图标
    2. ui->my_pbtn->setIcon(QIcon(":/imgs/myBtn.png"));
    3. ui->my_pbtn->setIconSize(QSize(80,80));//设置图标大小
    4. // label设置图标
    5. my_lab_ = new QLabel();//新建label
    6. QPixmap my_pix_map;
    7. my_pix_map.load(":/imgs/mylab.png"); //设置QPixmap
    8. my_pix_map.scaled(50,50,Qt::KeepAspectRatio,Qt::SmoothTransformation);//设置大小
    9. ui->my_lab_->setPixmap(my_pix_map); //设置图标
  • 设置样式
  1. // 设置按钮风格
  2. my_pbtn_->setFixedSize(QSize(80,80));//设置按钮大小
  3. my_pbtn_->setStyleSheet("QPushButton:hover{background-color:rgba(0,0,0,10%);border:1px solid rgb(196,196,188);}"
  4. "QPushButton:pressed{background-color:rgba(0,0,0,20%);border:1px solid rgb(196,196,188);}"
  5. "QPushButton{background-color:transparent;border:1px solid rgb(196,196,188);}");//设置按钮的鼠标滑过、按下和默认状态分别显示的颜色,以及这三个状态下按钮边框宽度和颜色
  6. // 设置label风格
  7. my_lab_->setFixedSize(QSize(30,30));
  8. my_lab_->setStyleSheet("background:transparent;border-top:none;border-bottom:1px solid rgb(196,196,188);");//设置label的背景透明,上边框和右边框的边框宽度和颜色,也可直接设置全部边框宽度和颜色如:border:1px solid rgb(196,196,188)。
  • 设置显示的文字
  1. // 按钮设置显示文字
  2. ui->m_user_head_pbtn_->setText("ok");//设置文字内容
  3. QFont f;
  4. f.setPixelSize(10);
  5. ui->m_user_head_pbtn_->setFont(f);//设置字体大小
  6. // label设置显示文字
  7. ui->my_lab_->setText(user_name);
  8. QFont f;
  9. f.setPixelSize(10);
  10. my_lab_->setFont(f);

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/花生_TL007/article/detail/613833
推荐阅读
相关标签
  

闽ICP备14008679号