PYQT---QT designer 之 QSS

遇到问题:

  • 按钮的样式,hover,pressed 要写在其他样式上方,要不不生效.
  • 指定某个空间 “#控件名”,不指定的话所有子空间都会被改变.同理,可以把所有样式全都写在祖宗控件里
  • 指定多个控件 用 ","来添加 比如 QPushButton#控件1名字,#控件1名字,#控件1名字{};
  • QButton:hover{}这种不要跟color:red这种写到一级,会出错,
--------错误的[如果这么写,hover和pressed只有一个会生效,放在第一行的那个,折腾了半晚上.]-------
/*悬停*/
QPushButton::hover{background-color:#336699};
/*点击*/
QPushButton::pressed{background-color:#1581C9};

/*无边框*/
border: none;
/*字体颜色*/
color:#FFFFFF;
/*背景颜色*/
background-color:#1581C9;

--------正确的--------
/*悬停*/
QPushButton::hover{background-color:#336699};
/*点击*/
QPushButton::pressed{background-color:#1581C9};
QPushButton {
	/*无边框*/
	border: none;
	/*字体颜色*/
	color:#FFFFFF;
	/*背景颜色*/
	background-color:#1581C9;
}

几款漂亮的rss
https://www.cnblogs.com/newstart/p/4370203.html
下面是转载的QT designer的一些样式写法
https://blog.csdn.net/llfwdd/article/details/46602113

1.QLabel

QLabel#label_sum_text{

font: 75 35pt “微软雅黑”; /字体/

background-color: rgb(255, 255, 255); /背景色/

color: rgb(152, 156, 156); /字体颜色/

border-style:hidden; /边框样式/

padding: 1px 1px 8px 1px; /四周边距/

}

2.QToolButton、QPushButton

/按钮正常显示/

QToolButton#toolButton_7{

border-image: url(

:/keybord_cfm/images/keybord_cfm/u63.png);

}

/按钮按下/

QToolButton#toolButton_7::pressed{

border-image: url(

:/keybord_cfm/images/keybord_cfm/u63_mouseOver.png);

}

/鼠标移到按钮上时/

QToolButton#toolButton_7::hover{

border-image: url(

:/keybord_cfm/images/keybord_cfm/u63_mouseOver.png);

}

注意:border-image适用于所有控件

3.QFrame

QFrame#frame_right_top{

border-style:solid; /边框样式/

border-width:1px; /边框宽度/

border-radius: 6px; /圆角边框/

border-color: rgb(173, 176, 182); /边框颜色/

background-color: rgb(255, 255, 255); /背景色/

}

4.QTableView

/设置行交替颜色/

QTableView::item:alternate:!selected,

QTableWidget::item:alternate:!selected,

QListView::item:alternate:!selected

{ background: rgb(255, 255, 204); }

QTableView::item:!alternate:!selected,

QTableWidget::item:!alternate:!selected,

QListView::item:!alternate:!selected

{ background: rgb(248, 236, 212); }

QTableView{

font: 11pt “微软雅黑”;

color: rgb(152, 152, 152);

selection-background-color: rgb(50, 151, 243);

}

QTableView::item:selected{

color: rgb(152, 152, 152);

background:rgb(248, 236, 212); /选中行背景色/

}

/表头设置/

QTableView QHeaderView

{

background-color: rgb(248, 248, 248);

font: 12pt “微软雅黑”;

color: rgb(112, 112, 112);

}

/水平表头/

QHeaderView::section::horizontal {

padding: 0px;

border: none;

border-bottom: 1px solid rgb(214, 215, 218);

background-color: rgb(248, 248, 248);

}

/垂直表头/

QHeaderView::section::vertical {

padding: 5px;

border: none;

background-color: rgb(248, 248, 248);

alternate-background-color: rgb(255, 0, 0);

}

/左上角按钮/

QTableCornerButton::section {

padding: 0px;

border: none;

border-bottom: 1px solid rgb(214, 215, 218);

background-color: rgb(248, 248, 248);

}

5.QTableView属性设置

void setAttibutes(IN QTableView* pView,IN int nHeaderHeight,IN int nColumnHeight)
{
if ( pView == NULL )
{
QString strTemp = QStringLiteral(“pView== NULL!设置表格属性失败!”);
LOG_ALL_ERROR(strTemp);
QMessageBox::information(0,0,QStringLiteral(“设置表格属性失败!”));
return;

}
}

pView->horizontalHeader()->setFixedHeight(nHeaderHeight); //设置表头的高度
pView->horizontalHeader()->setSectionsClickable(false); //设置表头不可点击(默认点击后进行排序)
//pView->horizontalHeader()->setSectionResizeMode(QHeaderView::Stretch); //列宽都一致
pView->horizontalHeader()->setStretchLastSection(true); //最后一列占满剩余空白
pView->setSelectionBehavior(QAbstractItemView::SelectRows); //设置选择行为时每次选择一行
pView->setEditTriggers(QAbstractItemView::NoEditTriggers); //使表视图只读
pView->verticalHeader()->setDefaultSectionSize(nColumnHeight); //设置行高
//pView->setAlternatingRowColors(true); //可以交替颜色显示
pView->setShowGrid(false); //设置不显示格子线
pView->setCornerButtonEnabled(false); //左上角的按钮不可用,此按钮功能,一点击,全选

//水平滚动条
pView->horizontalScrollBar()->setStyleSheet(“QScrollBar{background:transparent; height:10px;}”
“QScrollBar::handle{background:lightgray; border:2px solid transparent; border-radius:5px;}”
“QScrollBar::handle:hover{background:gray;}”
“QScrollBar::sub-line{background:transparent;}”
“QScrollBar::add-line{background:transparent;}”);

//垂直滚动条
pView->verticalScrollBar()->setStyleSheet(“QScrollBar{background:transparent; width: 10px;}”
“QScrollBar::handle{background:lightgray; border:2px solid transparent; border-radius:5px;}”
“QScrollBar::handle:hover{background:gray;}”
“QScrollBar::sub-line{background:transparent;}”
“QScrollBar::add-line{background:transparent;}”);
}


作者:llfwdd
来源:CSDN
原文:https://blog.csdn.net/llfwdd/article/details/46602113
版权声明:本文为博主原创文章,转载请附上博文链接!

  • 0
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值