中繪製不同顏色的行在我的應用程序中,當我點擊行時,我有默認的藍色行標記爲 ,但在這個藍色的顏色旁邊,我通過不同顏色繪製行函數不依賴於用戶點擊的信號,在排序我需要一個函數,我會通過行索引,它會繪製在X顏色的行。我怎樣才能在QTreeWidget(Qt)
1
A
回答
0
使用項目角色創建委託函數。在每個樹項目中設置項目角色。訪問樹委託的繪畫事件中的項目並相應地繪製該行。
0
對於QStandardItem,您可以將背景角色設置爲所需的顏色。
void customSelect(const QModelIndex &index)
{
if(!index.isValid())
return;
QStandardItemModel* myModel = dynamic_cast<QStandardItemModel*> (index.model());
if(!myModel)
return;
int row = index.row();
for(int col = 0 , colCount = myModel.columnCount(); col < colCount ; ++i)
{
QStandardItem *item = myModel.item(row, col);
item->setData(Qt::blue, Qt::BackgroundColorRole);
}
}
+0
此方法的問題是如果定義了項目懸停/選定的顏色,它將完全覆蓋背景角色。另外,問題是使用模型引用'QTreeWidget'而不是'QTreeView'。 – mrg95 2017-03-26 22:08:47
相關問題
- 1. 我怎樣才能在QT
- 2. 我怎樣才能從Qt
- 3. 我怎樣才能
- 4. 我怎樣才能
- 5. 我怎樣才能
- 6. 我怎樣才能
- 7. 我怎樣才能在Ionic2
- 8. 我怎樣才能在Zebble
- 9. 我怎樣才能在PreferenceScreen
- 10. 我怎樣才能在vim
- 11. 我怎樣才能在圖
- 12. 我怎樣才能在Python
- 13. 我怎樣才能在VB.net
- 14. 我怎樣才能在DB2
- 15. 我怎樣才能在Java
- 16. 我怎樣才能在Python
- 17. 我怎樣才能在PAM
- 18. 我怎樣才能在JSP
- 19. 我怎樣才能在RSPEC
- 20. 我怎樣才能在logstash
- 21. 我怎樣才能在Doctrine2
- 22. 我怎樣才能在Python
- 23. 我怎樣才能在vb.net
- 24. 我怎樣才能在SAS
- 25. 我怎樣才能在laravel
- 26. 我怎樣才能在GGPLOT2
- 27. 我怎樣才能在AngularJS
- 28. 我怎樣才能在Django
- 29. 我怎樣才能在Firefox
- 30. 我怎樣才能在Python
哇謝謝,你能指點我的示例代碼? – user63898 2010-10-21 09:15:04
請注意,代表用於Q * View類,通常不用於Q * Widget類(儘管您可能可以使其工作)。 – 2010-10-21 19:37:38