图头表格属性,支持设置单元格背景色
This commit is contained in:
parent
5368472ccd
commit
fcad00a5d7
|
|
@ -485,6 +485,21 @@ void PropertyWidget::SlotPropertyChanged( QtProperty *pProperty, const QVariant
|
||||||
ChangHeadItemProperty();
|
ChangHeadItemProperty();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
else if("背景颜色" == m_propertyData[pProperty])
|
||||||
|
{
|
||||||
|
//qDebug() << "背景颜色->改变";
|
||||||
|
//当前属性类型
|
||||||
|
if(m_strCurrentProperty == Head_Property)
|
||||||
|
{
|
||||||
|
//背景颜色
|
||||||
|
// 假设variant已经被设置为包含QColor
|
||||||
|
QColor newColor = variant.value<QColor>();
|
||||||
|
// 设置字体颜色
|
||||||
|
QBrush brush(newColor); // 使用Qt::red预定义颜色
|
||||||
|
m_formHead->m_bRefresh=false;
|
||||||
|
m_item->setBackground(brush);
|
||||||
|
}
|
||||||
|
}
|
||||||
else if("列宽(cm)" == m_propertyData[pProperty])
|
else if("列宽(cm)" == m_propertyData[pProperty])
|
||||||
{
|
{
|
||||||
//qDebug() << "列宽(cm)->改变";
|
//qDebug() << "列宽(cm)->改变";
|
||||||
|
|
@ -1066,6 +1081,13 @@ void PropertyWidget::initCurveProperty(FormInfo *formInfo, QStringList strListOt
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
QColor intToQColor(int intColor) {
|
||||||
|
int red = intColor & 0xFF;
|
||||||
|
int green = (intColor >> 8) & 0xFF;
|
||||||
|
int blue = (intColor >> 16) & 0xFF;
|
||||||
|
return QColor(red, green, blue);
|
||||||
|
}
|
||||||
|
|
||||||
void PropertyWidget::initHeadProperty(FormHead *formHead, QTableWidget *tableWidget, QTableWidgetItem* item, int row, int col)
|
void PropertyWidget::initHeadProperty(FormHead *formHead, QTableWidget *tableWidget, QTableWidgetItem* item, int row, int col)
|
||||||
{
|
{
|
||||||
//初始化,清空
|
//初始化,清空
|
||||||
|
|
@ -1103,9 +1125,11 @@ void PropertyWidget::initHeadProperty(FormHead *formHead, QTableWidget *tableWid
|
||||||
m_colWidth = tableWidget->columnWidth(col)/g_dPixelPerCm;
|
m_colWidth = tableWidget->columnWidth(col)/g_dPixelPerCm;
|
||||||
m_rowHeight = tableWidget->rowHeight(row)/g_dPixelPerCm;
|
m_rowHeight = tableWidget->rowHeight(row)/g_dPixelPerCm;
|
||||||
|
|
||||||
|
|
||||||
_CreateVariantPropertyItem("单元格", "图例", imagePath, VariantManager::filePathTypeId()); //"./image/胜利符号库/岩性符号/砂岩.png"
|
_CreateVariantPropertyItem("单元格", "图例", imagePath, VariantManager::filePathTypeId()); //"./image/胜利符号库/岩性符号/砂岩.png"
|
||||||
_CreateVariantPropertyItem("单元格", "图例宽(cm)", m_colWidth_Img, QVariant::Double, 0, 100);
|
_CreateVariantPropertyItem("单元格", "图例宽(cm)", m_colWidth_Img, QVariant::Double, 0, 100);
|
||||||
_CreateVariantPropertyItem("单元格", "图例高(cm)", m_rowHeight_Img, QVariant::Double, 0, 100);
|
_CreateVariantPropertyItem("单元格", "图例高(cm)", m_rowHeight_Img, QVariant::Double, 0, 100);
|
||||||
|
_CreateVariantPropertyItem("单元格", "背景颜色", m_item->background().color(), QVariant::Color);
|
||||||
|
|
||||||
_CreateVariantPropertyItem("文本", "内容", item->text(), QVariant::String);
|
_CreateVariantPropertyItem("文本", "内容", item->text(), QVariant::String);
|
||||||
_CreateVariantPropertyItem("文本", "字体", m_item->font(), QVariant::Font);
|
_CreateVariantPropertyItem("文本", "字体", m_item->font(), QVariant::Font);
|
||||||
|
|
|
||||||
|
|
@ -387,7 +387,7 @@ void FormDraw::DisplayLine_One(QJsonObject lineObjInfo)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
//
|
//
|
||||||
if (lineObjInfo.contains("lineColorRed"))
|
if (lineObjInfo.contains("lineColor"))
|
||||||
{
|
{
|
||||||
lineColor.setNamedColor(lineObjInfo.value("lineColor").toString());
|
lineColor.setNamedColor(lineObjInfo.value("lineColor").toString());
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -35,11 +35,17 @@ FormHead::FormHead(QWidget *parent, QString indexID) :
|
||||||
m_indexID =indexID;
|
m_indexID =indexID;
|
||||||
m_parent = (FormMultiHeads *)parent;
|
m_parent = (FormMultiHeads *)parent;
|
||||||
|
|
||||||
|
// 强制使用Qt渲染引擎
|
||||||
|
//QApplication::setAttribute(Qt::AA_UseStyleSheetPropagationInWidgetStyles, true);
|
||||||
|
//取消全局样式表
|
||||||
|
// ui->tableWidget->setStyleSheet("");
|
||||||
|
// ui->tableWidget->setAutoFillBackground(true);
|
||||||
|
|
||||||
//设置样式表,不显示竖直边框
|
//设置样式表,不显示竖直边框
|
||||||
ui->tableWidget->setStyleSheet( "QTableView::item {border-left: 0px solid black;} \
|
// ui->tableWidget->setStyleSheet( "QTableView::item {border-left: 0px solid black;} \
|
||||||
QTableView::item:selected {border-left: 0px solid black;}\
|
// QTableView::item:selected {border-left: 0px solid black;}\
|
||||||
QTableView::item {border-right: 0px solid black;} \
|
// QTableView::item {border-right: 0px solid black;} \
|
||||||
QTableView::item:selected {border-right: 0px solid black;}");
|
// QTableView::item:selected {border-right: 0px solid black;}");
|
||||||
|
|
||||||
//ui->tableWidget->setSizeAdjustPolicy(QTableWidget::AdjustToContents); //表格大小随内容改变,会占满
|
//ui->tableWidget->setSizeAdjustPolicy(QTableWidget::AdjustToContents); //表格大小随内容改变,会占满
|
||||||
|
|
||||||
|
|
@ -158,8 +164,17 @@ void FormHead::Init(int iRows, int iCols)
|
||||||
item->setData(Qt::UserRole+1, ""); //图片路径 ./image/胜利符号库/解释结论符号/
|
item->setData(Qt::UserRole+1, ""); //图片路径 ./image/胜利符号库/解释结论符号/
|
||||||
item->setData(Qt::UserRole+2, 0); //图例宽
|
item->setData(Qt::UserRole+2, 0); //图例宽
|
||||||
item->setData(Qt::UserRole+3, 0); //图例高
|
item->setData(Qt::UserRole+3, 0); //图例高
|
||||||
// item->setData(Qt::UserRole+4, colWidth/g_dPixelPerCm); //列宽
|
|
||||||
// item->setData(Qt::UserRole+5, rowHeight/g_dPixelPerCm); //行高
|
// 设置背景色
|
||||||
|
QColor color(255, 255, 255, 255);
|
||||||
|
QBrush HeadBrush = QBrush(color);
|
||||||
|
HeadBrush.setStyle(Qt::SolidPattern);
|
||||||
|
item->setBackground(HeadBrush);
|
||||||
|
item->setData(Qt::BackgroundRole, color); // 双重保险
|
||||||
|
// 设置字体颜色
|
||||||
|
QColor colorTxt(0, 0, 0, 255);
|
||||||
|
item->setForeground(QBrush(colorTxt));
|
||||||
|
//
|
||||||
ui->tableWidget->setItem(i, j, item);
|
ui->tableWidget->setItem(i, j, item);
|
||||||
|
|
||||||
//---------------------------
|
//---------------------------
|
||||||
|
|
@ -208,6 +223,7 @@ void FormHead::Init(int iRows, int iCols)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
//初始化完成后再连接信号槽,防止数据初始化时激活信号
|
//初始化完成后再连接信号槽,防止数据初始化时激活信号
|
||||||
connect(ui->tableWidget, SIGNAL(itemChanged(QTableWidgetItem*)), this, SLOT(onItemChanged(QTableWidgetItem*)));
|
connect(ui->tableWidget, SIGNAL(itemChanged(QTableWidgetItem*)), this, SLOT(onItemChanged(QTableWidgetItem*)));
|
||||||
connect(ui->tableWidget, SIGNAL(itemSelectionChanged()), this, SLOT(onItemSelectionChanged()));
|
connect(ui->tableWidget, SIGNAL(itemSelectionChanged()), this, SLOT(onItemSelectionChanged()));
|
||||||
|
|
|
||||||
|
|
@ -21,14 +21,20 @@ FormMultiHeads::FormMultiHeads(QWidget *parent) :
|
||||||
ui->setupUi(this);
|
ui->setupUi(this);
|
||||||
|
|
||||||
//-------------------------------------
|
//-------------------------------------
|
||||||
|
// 强制使用Qt渲染引擎
|
||||||
|
//QApplication::setAttribute(Qt::AA_UseStyleSheetPropagationInWidgetStyles, true);
|
||||||
|
//取消全局样式表
|
||||||
|
// ui->tableWidget->setStyleSheet("");
|
||||||
|
// ui->tableWidget->setAutoFillBackground(true);
|
||||||
|
|
||||||
//ui->tableWidget->hide();
|
//ui->tableWidget->hide();
|
||||||
//隐藏网格线
|
//隐藏网格线
|
||||||
ui->tableWidget->setShowGrid(false);
|
ui->tableWidget->setShowGrid(false);
|
||||||
//设置样式表,不显示竖直边框
|
// //设置样式表,不显示竖直边框
|
||||||
ui->tableWidget->setStyleSheet( "QTableView::item {border-left: 0px solid black;} \
|
// ui->tableWidget->setStyleSheet( "QTableView::item {border-left: 0px solid black;} \
|
||||||
QTableView::item:selected {border-left: 0px solid black;}\
|
// QTableView::item:selected {border-left: 0px solid black;}\
|
||||||
QTableView::item {border-right: 0px solid black;} \
|
// QTableView::item {border-right: 0px solid black;} \
|
||||||
QTableView::item:selected {border-right: 0px solid black;}");
|
// QTableView::item:selected {border-right: 0px solid black;}");
|
||||||
//
|
//
|
||||||
ui->tableWidget->verticalHeader()->hide(); //行
|
ui->tableWidget->verticalHeader()->hide(); //行
|
||||||
ui->tableWidget->horizontalHeader()->hide(); //列
|
ui->tableWidget->horizontalHeader()->hide(); //列
|
||||||
|
|
|
||||||
|
|
@ -59,8 +59,6 @@ MainWindow::MainWindow(QWidget *parent) :
|
||||||
this->setWindowIcon(QIcon(":/qrc/logo.ico"));
|
this->setWindowIcon(QIcon(":/qrc/logo.ico"));
|
||||||
|
|
||||||
//加载样式
|
//加载样式
|
||||||
//loadStyle(":/qrc/qss/lightblue.css");
|
|
||||||
//loadStyle(":/qrc/qss/blacksoft.css");
|
|
||||||
loadStyle(":/qrc/qss/flatgray.css");
|
loadStyle(":/qrc/qss/flatgray.css");
|
||||||
|
|
||||||
ReadConfig();
|
ReadConfig();
|
||||||
|
|
|
||||||
|
|
@ -4008,42 +4008,10 @@ void MainWindowCurve::DisplayLine_One(QJsonObject lineObjInfo, QString strTrackN
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
//
|
//
|
||||||
if (lineObjInfo.contains("lineColorRed"))
|
if (lineObjInfo.contains("lineColor"))
|
||||||
{
|
{
|
||||||
QJsonValue value = lineObjInfo.value("lineColorRed");
|
lineColor.setNamedColor(lineObjInfo.value("lineColor").toString());
|
||||||
if (value.isDouble()) {
|
|
||||||
lineColor.setRed(value.toInt());
|
|
||||||
//qDebug() << "lineColorRed:" << QString::number(value.toInt());
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
//
|
|
||||||
if (lineObjInfo.contains("lineColorGreen"))
|
|
||||||
{
|
|
||||||
QJsonValue value = lineObjInfo.value("lineColorGreen");
|
|
||||||
if (value.isDouble()) {
|
|
||||||
lineColor.setGreen(value.toInt());
|
|
||||||
//qDebug() << "lineColorGreen:" << QString::number(value.toInt());
|
|
||||||
}
|
|
||||||
}
|
|
||||||
//
|
|
||||||
if (lineObjInfo.contains("lineColorBlue"))
|
|
||||||
{
|
|
||||||
QJsonValue value = lineObjInfo.value("lineColorBlue");
|
|
||||||
if (value.isDouble()) {
|
|
||||||
lineColor.setBlue(value.toInt());
|
|
||||||
//qDebug() << "lineColorBlue:" << QString::number(value.toInt());
|
|
||||||
}
|
|
||||||
}
|
|
||||||
//
|
|
||||||
if (lineObjInfo.contains("lineColorAlpha"))
|
|
||||||
{
|
|
||||||
QJsonValue value = lineObjInfo.value("lineColorAlpha");
|
|
||||||
if (value.isDouble()) {
|
|
||||||
lineColor.setAlpha(value.toInt());
|
|
||||||
//qDebug() << "lineColorAlpha:" << QString::number(value.toInt());
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
QString folderPath = GetLogdataPath();
|
QString folderPath = GetLogdataPath();
|
||||||
folderPath = folderPath + g_prjname;
|
folderPath = folderPath + g_prjname;
|
||||||
|
|
|
||||||
|
|
@ -472,21 +472,21 @@ margin:4px;
|
||||||
border-image:url(:/qrc/qss/flatgray/branch_close.png);
|
border-image:url(:/qrc/qss/flatgray/branch_close.png);
|
||||||
}
|
}
|
||||||
|
|
||||||
QTreeView,QListView,QTableView,QSplitter::handle,QTreeView::branch{
|
QTreeView,QListView,QSplitter::handle,QTreeView::branch{
|
||||||
background:#FFFFFF;
|
background:#FFFFFF;
|
||||||
}
|
}
|
||||||
|
|
||||||
QTableView::item:selected,QListView::item:selected,QTreeView::item:selected{
|
QListView::item:selected,QTreeView::item:selected{
|
||||||
color:#57595B;
|
color:#57595B;
|
||||||
background:#E4E4E4;
|
background:#E4E4E4;
|
||||||
}
|
}
|
||||||
|
|
||||||
QTableView::item:hover,QListView::item:hover,QTreeView::item:hover,QHeaderView,QHeaderView::section,QTableCornerButton:section{
|
QListView::item:hover,QTreeView::item:hover,QHeaderView,QHeaderView::section,QTableCornerButton:section{
|
||||||
color:#57595B;
|
color:#57595B;
|
||||||
background:#F6F6F6;
|
background:#F6F6F6;
|
||||||
}
|
}
|
||||||
|
|
||||||
QTableView::item,QListView::item,QTreeView::item{
|
QListView::item,QTreeView::item{
|
||||||
padding:1px;
|
padding:1px;
|
||||||
margin:0px;
|
margin:0px;
|
||||||
border:0px;
|
border:0px;
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue
Block a user