QTableView 样式参考

xiaoxiao2021-02-28  31

先看效果

QTableView样式分多个区域

整体样式 QTableView { color: white; /*表格内文字颜色*/ gridline-color: black; /*表格内框颜色*/ background-color: rgb(108, 108, 108); /*表格内背景色*/ alternate-background-color: rgb(64, 64, 64); selection-color: white; /*选中区域的文字颜色*/ selection-background-color: rgb(77, 77, 77); /*选中区域的背景色*/ border: 2px groove gray; border-radius: 0px; padding: 2px 4px; }

奇偶行区分颜色样式

cpp: view->setAlternatingRowColors(true); qss: QTableView{ background-color: rgb(250, 250, 115); alternate-background-color: rgb(141, 163, 215); } 水平/垂直表头 设置表头样式 QHeaderView { color: white; font: bold 10pt; background-color: rgb(108, 108, 108);/*设置表头空白区域背景色*/ border: 0px solid rgb(144, 144, 144); border:0px solid rgb(191,191,191); border-left-color: rgba(255, 255, 255, 0); border-top-color: rgba(255, 255, 255, 0); border-radius:0px; min-height:29px; }

为垂直及水平表头分别设置样式 表头为QHeaderView,水平表头和垂直表头都是QHeaderView,需要设置QTableView两个表头的ObjectName进行区分

view->horizontalHeader()->setObjectName("hHeader"); view->verticalHeader()->setObjectName("vHeader");

样式中根据不同对象名称进行样式设置

QHeaderView#hHeader::section { background-color:darkcyan; color: red;padding-left: 4px; border: 1px solid #6c6c6c; height:40; } QHeaderView#vHeader::section { background-color: qlineargradient(x1:0, y1:0, x2:0, y2:1,stop:0 #616161, stop: 0.5 yellow,stop: 0.6 green, stop:1 cyan); color: white;padding-left: 4px;border: 1px solid #6c6c6c; width:30; } 左上角空白区域 设置完QTableView头部后,左上角区域为白色,需要为左上角区域设置样式 /*QTableView 左上角样式*/ QTableView QTableCornerButton::section { /* background: red; border: 2px outset red;*/ color: red; background-color: rgb(64, 64, 64); border: 5px solid #f6f7fa; border-radius:0px; border-color: rgb(64, 64, 64); } 表头内容区域 QHeaderView::section { color: white; background-color: rgb(64, 64, 64); border: 5px solid #f6f7fa; border-radius:0px; border-color: rgb(64, 64, 64); }

全部样式代码:

/*QTableView 左上角样式*/ QTableView QTableCornerButton::section { /* background: red; border: 2px outset red;*/ color: red; background-color: rgb(64, 64, 64); border: 5px solid #f6f7fa; border-radius:0px; border-color: rgb(64, 64, 64); } QTableView { color: white; /*表格内文字颜色*/ gridline-color: black; /*表格内框颜色*/ background-color: rgb(108, 108, 108); /*表格内背景色*/ alternate-background-color: rgb(64, 64, 64); selection-color: white; /*选中区域的文字颜色*/ selection-background-color: rgb(77, 77, 77); /*选中区域的背景色*/ border: 2px groove gray; border-radius: 0px; padding: 2px 4px; } QHeaderView { color: white; font: bold 10pt; background-color: rgb(108, 108, 108); border: 0px solid rgb(144, 144, 144); border:0px solid rgb(191,191,191); border-left-color: rgba(255, 255, 255, 0); border-top-color: rgba(255, 255, 255, 0); border-radius:0px; min-height:29px; } QHeaderView::section { color: white; background-color: rgb(64, 64, 64); border: 5px solid #f6f7fa; border-radius:0px; border-color: rgb(64, 64, 64); }
转载请注明原文地址: https://www.6miu.com/read-36024.html

最新回复(0)