2010-01-27 30 views
2

我有一個QListWidget,其中包含具有圖標的項目,並且在選擇項目時,圖標只是突出顯示。有沒有辦法來防止這種情況?我無法使用樣式表,因爲它適用於嵌入式應用程序,並且包含它們佔用太多空間。 感謝Qt:如何顯示項目選擇時的圖標

回答

0

當然,在黑白屏幕上繪畫呈現出其挑戰。

這聽起來像你只是想改變界面的外觀,而不是任何功能。如果是這種情況,QItemDelegate派生類(或QStyledItemDelegate)幾乎肯定是你想要的。特別是,drawDecoration函數看起來像是用來繪製一個圖標,樣式選項應該包括它是否被選中。最簡單的解決方法是重寫該函數,將選項中的選定標誌設置爲false,然後將其傳遞給父級函數。

1

我想,當你說「Highlithed了」,你的意思是在選擇線路時,圖標顏色沒有很好地渲染,所以,你看不到正確的圖標...

也許你可以考慮在選擇物品時使用不同的圖標。可以通過爲圖標指定模式來實現。

例子:

QIcon MyIcon(":/images/foo"); 
MyIcon.addFile(":/images/bar", QSize(...), QIcon::Selected); 

您可以輕鬆地在QtDesigner一個嘗試,看看結果...

希望它可以幫助一點!

+0

謝謝,但我忘了提及我使用的是黑白屏幕,所以如果圖標突出顯示,所有的東西都只是黑色。我需要一種方法來防止突出顯示圖標。 – Ayeayeron 2010-01-27 23:17:45

+0

是的,但它是相同的過程,通過按照我所建議的方式指定您的圖標,您只需爲所有行狀態指定相同的圖標(未選中,選定等...)是否不符合您的需求? – 2010-01-28 06:12:19

相關問題