赞
踩
//半透明
QGraphicsOpacityEffect* opacityEffect = new QGraphicsOpacityEffect;
opacityEffect->setOpacity(0.8);
ui->link_persons->setGraphicsEffect(opacityEffect);
也可以在qss
设置背景颜色时设置,如:
//不透明程度为80%,越小越透明
ui->label->setStyleSheet("QLabel#label{background-color:rgb(0,255,0,80%);}");
ui->search_line->setPlaceholderText(u8"搜索");
运行结果:
QIcon button_ico5(":/new/prefix1/source/pic5.png");
ui->pushButton_5->setIcon(button_ico5);
运行结果:
QFont font1 ( "Microsoft YaHei", 12); //字体,大小
font1.setFamily("Microsoft YaHei"); //设置字体
font1.setUnderline(false); //下划线
font1.setOverline(false); //上划线
font1.setPixelSize(15); //设置字体像素大小
font1.setBold(false); //加粗
font1.setItalic(false); //斜体
font1.setPointSize(12); //字体大小
font1.setStrikeOut(false); //删除线
ui->label_2->setFont(font1); //应用于label
ui->label_2->setStyleSheet("color:white");//文本颜色
运行结果:
最好的方法还是做一个带文字的背景图片,作为pushbutton
的背景,以下使用布局来做是为了学习和整理。
由于设置文字在图标下面,使用的是setToolButtonStyle
,而pushbutton
没有这个属性,所以我把pushbutton
都替换成了toolbutton
,下面以toolbutton
为例:
//隐藏边框,设置颜色
ui->to_page_1->setStyleSheet("QToolButton#to_page_1{background-color:#eee;border:0px;}");
//显示图标
QIcon button_ico1(":/new/prefix1/source/mainwindow.png");
ui->to_page_1->setIcon(button_ico1);
//按钮上的文字在ui双击按钮输入,或settext()
ui->to_page_1->setText(u8"首页");
//设置图标尺寸
ui->to_page_1->setIconSize(QSize(45,45));
//设置格式为图片在上,文字在下
ui->to_page_1->setToolButtonStyle(Qt::ToolButtonTextUnderIcon);
运行结果:
之前有些使用的事件过滤器来做的,现在改成用qss来做就方便多了,实现格式:
//按下事件时改变样式(注:只有点击的一瞬间改变,松开就又没了) ui->to_page_2->setStyleSheet("QToolButton#to_page_2{...} QToolButton#to_page_2:pressed{}" //事件 pressed //按下 hover //悬浮 checked //选中 unchecked //未被选中 focus //焦点 disable //控件失效 enable //控件有效 indeterminate //部分选中 on //处于on状态 off //处于off状态 //控件的子控件中用双冒号实现,如 QScrollBar::handle //滚动条 QScrollBar::sub-line QScrollBar::add-line QScrollBar::handle:hover QScrollBar::handle:pressed
使用时,比如:
ui->to_page_2->setStyleSheet("QToolButton#to_page_2{background-color:rgb(1,93,180);border:0px;}QToolButton#to_page_2:pressed{background-color:#eee;border:0px;}");
那么这个按钮在点击时会变成白色:
但是有个问题,鼠标松开就会变回去!
悬浮这些改变格式还是可以用这个来的,但是其他的在掌握进一步的操作之前,还是用事件过滤器来吧。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。