Qt窗口有背景色和背景。Qt窗口背景如何设置可以用这两种办法试一试:
1、实现paintEvent,使用QPainter来绘制背景
2、QPalette设置背景
onnect(tableWidget,SIGNAL(cellEntered(int,int)),this,SLOT(mycellEntered(int,int)));
在槽函数中可以实现改变第几行第几列的颜色!
用QTreeWidget也可以啊!QTableWidget就相当于QTreeWidget只有顶层,没有子节点而已!
treeWidget->setStyleSheet( "QTreeView::item:hover{background-color:rgb(0,255,0,50)}"
"QTreeView::item:selected{background-color:rgb(255,0,0,100)}");
hover表示鼠标滑动过时的颜色,selected表示选中时的颜色。
使用QTreeWidget岂不是更简单,使用QSS样式设置就行了,QTableWidget还得自己写事件!
QPalette p = 窗口对象->palette();
psetColor(QPalette::Window,color);
窗口对象-> setPalette(p);
可以用stylesheet来实现
要实现的效果 要实现QComboBox下拉列表不同项设置不同背景色,选中后编辑框背景色变成选中项的背景色
2 解决思路 可以通过设置QComboBox的setItemData来设置背景色和字体颜色,通过设置QComboBox的编辑框QLineEdit的styleSheet方法来设置编辑框的背景色,通过对QComboBox的highlighted和
3 核心代码 核心代码如下:
虽然不懂怎么用tree view
但是你可以这样试试
在ui界面中 ,对tree view 右键-->改变式样表 增加如下内容
QHeaderView{
rgb(198, 61, 61)
}
//rgb 是你背景的rgb
如果不是在ui中写的
那就这样
yourConsetSytleSheet("QHeaderView{rgb(198, 61, 61) ");
试试看呗
以上就是关于怎么解决qt中主窗口背景设置,所有控件都会变成这个背景全部的内容,包括:怎么解决qt中主窗口背景设置,所有控件都会变成这个背景、QT中,QTableView鼠标移动到item上时该item所在行的背景颜色变成其他颜色,这要怎么实现、qt4.7.2如何设置程序窗口背景色等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)