Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/qt/7.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Qt QListWidget项上的绘图边框使文本在单击时消失_Qt_Qt5 - Fatal编程技术网

Qt QListWidget项上的绘图边框使文本在单击时消失

Qt QListWidget项上的绘图边框使文本在单击时消失,qt,qt5,Qt,Qt5,我尝试使用以下行将边框设置为QListWidget项: mListwidget->setStyleSheet("QListWidget:item{height: 40px;border-left: 2px solid red;}"); 使用mListwidget作为QListWidget 当我运行代码时,会得到所需的红色边框,但是当我单击QListWidgetItem时,上面的文本就会消失 我附上这些照片作为参考。 这就是它的外观,这就是发生的情况。文本消失,因为您忘记定义所选样式:QL

我尝试使用以下行将边框设置为
QListWidget
项:

mListwidget->setStyleSheet("QListWidget:item{height: 40px;border-left: 2px solid red;}");
使用
mListwidget
作为
QListWidget

当我运行代码时,会得到所需的红色边框,但是当我单击QListWidgetItem时,上面的文本就会消失

我附上这些照片作为参考。
这就是它的外观,这就是发生的情况。

文本消失,因为您忘记定义所选样式:QListWidget::item:selected

请参阅下面的代码:

mListwidget->setStyleSheet("QListWidget:item{height: 40px;border-left: 2px solid red;}QListWidget::item:selected {background-color: white; color: black}");

示例和其他信息。

我曾经尝试过这样做,但问题是这样做时它不会显示默认的选择颜色。我在Mac上也有这个问题,当我设置选择颜色时,它工作得很好,但我希望它根据系统设置进行更改。然后你可以在\u listWidget\u Item上实现一个插槽,当调用它时,它会将QListWidgetItem样式表更改为系统默认值或您想要的任何其他样式表。我尝试通过插槽将其设置为系统默认值,但随后丢失了所做的更改。主要问题是,当我在列表小部件项的右侧添加一个图标时,文本在被选中并处于活动状态时会向左移动。为了解决这个问题,我使用了:QListWidget:item[/*property*]{border:2px solid red;}(也尝试用于活动条件)当我这样做时,它解决了文本移位问题,但是我没有得到默认的选择颜色&在调用默认样式表时,我得到了选择颜色,但不幸的是,文本移位问题再次出现