QTableView设置样式表/选中行颜色, QTableView美化 | 您所在的位置:网站首页 › qq空间字体颜色改变 › QTableView设置样式表/选中行颜色, QTableView美化 |
QTableView设置QSS样式表 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; 只设置此行的这一列的背景颜色,设置成功。 如:item->setBackgroundColor(QColor(0,60,10));//也可以使用qt系统的默认颜色。 设置单元格字体颜色、背景颜色和字体字符: QTableWidgetItem *item = new QTableWidgetItem("Apple"); item->setBackgroundColor(QColor(0,60,10)); item->setTextColor(QColor(200,111,100)); item->setFont(QFont("Helvetica")); tableWidget->setItem(0,3,item); /* 表格设置 */ QTableView{ /** QTableView设置 */ border: none; background-color: white; selection-background-color: black; } QHeaderView::section{ /*表头设置*/ border: none; height:20px; /*表头高度*/ color: white; font-size: 15px; font-weight: 900; background-color: rgb(80, 80, 80); text-align: center; } QTableView::item{ /** 每个单元格设置 */ background-color: white; border: none; background-color: rgb(220, 220, 220); /*交替行,第二行*/ selection-background-color: white; selection-color: black; font-family: Consolas; font-size: 11px; text-align: center; } QTableView::item:!alternate:!selected{ background-color: white; /*交替行的另一颜色*/ selection-background-color: rgb(220, 220, 220); selection-color: black; } # 如果要显示两种颜色还要在代码中添加 ui->tableView_name->setShowGrid(false); //tableView_name->setAlternatingRowColors(true); //tabelwidget[控件名称]#include 创建一个tablewidget QTableWidget *tabelWidget = new QTableWidget ; 设置行数 tableWidget->setRowCount(value); 设置列数 tableWidget->setColumnCount(value); QTableWidget设置表头内容 QStringList header;headersetFocusPolicy(Qt::NoFocus); 设置垂直头不可见 tableWidget->verticalHeader()->setVisible(false); 设置水平、垂直滚动条样式 tableWidget->horizontalScrollBar()->setStyleSheet( “[美化内容参照QScrollArea样式美化]” );tableWidget->verticalScrollBar()->setStyleSheet(“[美化内容参照QScrollArea样式美化]” ); 修改表格编辑状态权限 tableWidget->setEditTriggers(QAbstractItemView::value);value常用参数:NoEditTriggers--不能对表格内容进行修改CurrentChanged--任何时候都能对单元格修改DoubleClicked--双击单元格SelectedClicked--单击已选中的内容 AnyKeyPressed--按下任意键就能修改 设置表格选择方式 tableWidget->setSelectionBehavior(QAbstractItemView::value); value常用参数:SelectItems--选中单个单元格SelectRows--选中一行 SelectColumns--选中一列) 单个选中和多个选中的设置 tableWidget->setSelectionMode(QAbstractItemView::value); value常用参数:NoSelection--不能选择SingleSelection--选中单个目标MultiSelection--选中多个目标ExtendedSelection/ContiguousSelection 的区别不明显,主要功能是正常情况下是单选,但按下Ctrl或Shift键后,可以多选) 表格表头的显示与隐藏 tableWidget->verticalHeader()->setVisible(false); //隐藏列表头 tableWidget->horizontalHeader()->setVisible(false); //隐藏行表头 设置表头字体及颜色 //获得水平方向表头的Item对象 QTableWidgetItem *columnHeaderItem = tableWidget->horizontalHeaderItem(0); columnHeaderItem->setFont(QFont("value")); //设置字体 columnHeaderItem->setBackgroundColor(QColor(0,0,0)); //设置单元格背景颜色 columnHeaderItem->setTextColor(QColor(0,0,0)); //设置文字颜色 在单元格里加入控件: tableWidget->setCellWidget(value x , value y , [你的控件]); 设置单元格字体颜色、背景颜色和字体字符: QTableWidgetItem *item = new QTableWidgetItem("显示的文字");item->setBackgroundColor(QColor(0,0,0));item->setTextColor(QColor(0,0,0));item->setFont(QFont("value"));tableWidget->setItem(0,0,item);//所有的单元格都使用tableWidget->setFont(QFont("value")); 合并单元格 //参数为: 要改变单元格的1行数、2列数,要合并的3行数、4列数tableWidget->setSpan(0, 0, 3, 1) ; 设置单元格宽高 tableWidget->setColumnWidth(3,200); //行tableWidget->setRowHeight(3,60); //列//行和列的大小设为与内容相匹配tableWidget->resizeColumnsToContents();tableWidget->resizeRowsToContents(); 调整表格行宽 //使列完全填充并平分tableWidget->horizontalHeader()->setResizeMode(QHeaderView::Stretch);//行自适应宽度 tableWidget->verticalHeader()->setResizeMode(QHeaderView::Stretch);//根据内容调整列宽tableWidget->resizeColumnsToContents(); 设置某列列宽 tableWidget->headerView->resizeSection(0,284);//设置第一列宽 内容清除 tableWidget->clear();//清除所有可见数据(包括表头),行还在tableWidget->clearContents();//只清除表中数据,不清除表头内容tableWidget->setRowCount( column );//或者直接设置行数为0,则所有行内容清除掉 表格排序,将某列按升序/降序的方式排列 tableWidget->sortByColumn( column , Qt::AscendingOrder); 获取某一格的内容 QString proName = tableWidget->item(row, column)->text(); 添加一行 int row = tableWidget->rowCount();//获取表格中当前总行数 tableWidget->setRowCount(row+1);//加一行 QSS美化 QScrollBar:vertical{ width:6px; border-style:flat; border-radius: 4px; border:0px; background: #19191A; } QScrollBar::handle:vertical{ background: rgba(255,255,255,0.50); border-radius: 4px; width:8px; min-height:91px; border-style:flat; } QScrollBar::handle:vertical::hover{ background: rgba(255,255,255,0.90); border-radius: 4px; width:8px; } QScrollBar::handle:vertical::pressed{ background: rgba(255,255,255,0.90); border-radius:4px; width:8px; } QScrollBar::sub-page:vertical { background: #19191A; border-style:flat; } QScrollBar::add-page:vertical { background: #19191A; border-style:flat; } QScrollBar::add-line:vertical{ background: #19191A; } QScrollBar::sub-line:vertical { background: #19191A; } QScrollBar:horizontal{ height:8px; border-style:flat; border-radius: 4px; border:0px; background: #19191A; } QScrollBar::handle:horizontal{ background: rgba(255,255,255,0.50); border-radius: 4px; height:8px; min-width:91px; border-style:flat; } QScrollBar::handle:horizontal::hover{ background: rgba(255,255,255,0.90); border-radius: 4px; height:8px; } QScrollBar::handle:horizontal::pressed{ background: rgba(255,255,255,0.90); border-radius:4px; height:8px; } QScrollBar::sub-page:horizontal { background: #19191A; border-style:flat; } QScrollBar::add-page:horizontal { background: #19191A; border-style:flat; } QScrollBar::sub-line:horizontal { background: #19191A; } QScrollBar::add-line:horizontal{ background: #19191A; } ui->tableWidget->verticalScrollBar()->setStyleSheet("QScrollBar:vertical { width: 5px; }"); QTableWidget{ background: #303033; } QTableWidget::item{ color:rgba(255,255,255,150); background: #303033; text-align:center; } QTableWidget::item:hover{ color:#FFFFFF; background: #4B4B4D; } QTableWidget::item:selected{ color:#FFFFFF; background: #4B4B4D; } QHeaderView::section,QTableCornerButton:section{ text-align:center; padding:3px; margin:0px; color:#DCDCDC; border:1px solid #242424; border-left-width:0px; border-right-width:1px; border-top-width:0px; border-bottom-width:1px; background:qlineargradient(spread:pad,x1:0,y1:0,x2:0,y2:1,stop:0 #646464,stop:1 #525252); } QHeaderView::section:selected{ color:#FFFFFF; border:1px solid #242424; } |
CopyRight 2018-2019 实验室设备网 版权所有 |