2013-08-05 82 views
-1

我很困惑爲ClistCtrl實現懸停效果的最佳方式是什麼。MFC Clistcontrol懸停效果

我的意思是當鼠標移動到一行報告視圖上時,背景會發生變化,鼠標離開視圖後背景顏色會變回。

任何人都可以給我一些例子或提示嗎?

p.s.它適用於在應用所有者繪製功能時調用懸停效果!

回答

0

這是我在OnInitDialog做,當我使用一個CListCtrl:

m_list.SetExtendedStyle (LVS_EX_FULLROWSELECT); 
SetWindowTheme(m_list.m_hWnd, L"Explorer", NULL) ; 
m_list.SetExtendedStyle(list.GetExtendedStyle() | LVS_EX_DOUBLEBUFFER); 

這樣的列表控件顯示一個更現代的風格在Vista上,W7和W8,並自動獲得你想要的行爲。資源管理器中的BTW列表控件的行爲也如此。

但是在Windows XP上你不會得到這種行爲。

+0

感謝邁克爾,我做了你所說的但沒有發生。你提供的方法和drawitem或鼠標移動功能之間是否有衝突? – user2654700

+0

如果列表是所有者繪製的,那麼我的方法將不起作用。 –

+0

那麼任何人都有想法如何在應用所有者繪製功能時調出懸停效果! – user2654700