当QTableView中的项被聚焦时,我正在尝试删除虚线轮廓。我在其他答案中发现,srand()
会删除它,但是对我来说,这仅适用于奇怪的情况:
使用此样式表,轮廓被删除,背景为黄色:
outline: 0
在此样式表中,轮廓仍然显示:
tableView->setStyleSheet("QTableView::item::focus { outline: 0; background-color: yellow; } QTableView { outline: 0; }");
我要删除轮廓,并以默认颜色显示背景。但似乎,它没有选择权。 outline命令仅在特定情况下有效,我觉得这很随机。
在误解Qt或样式表方面,这是我的错误吗?还是这是已知的错误,还是新的错误?
编辑(用于理解我的意思的图像):
这是添加的样式tableView->setStyleSheet("QTableView::item::focus { outline: 0; } QTableView { outline: 0; }");
tableView->setStyleSheet("QTableView { outline: 0; }");
tableView->setStyleSheet("QTableView::item::focus { outline: 0; }");
tableView->setStyleSheet("QTableView::item::focus { outline: 0; background-color: yellow; }");
。现在未显示ouline,但聚焦对象的背景为黄色:
问题是,我不明白,为什么它以一种特定的方式起作用,而不是以另一种方式起作用? 而我该怎么做才能在不更改背景的情况下删除轮廓?