2009-12-04 57 views
0

我從CListCtrl派生出一個名爲CListCtrlCustomDraw的類,並使用NM_CUSTOMDRAW處理程序來繪製列表。
問題是我有選擇的項目和未被選擇的項目不同的字體,它們是列表控制的成員變量,但是當我使用CListCtrl:如何在同一列使用不同的字體時獲得列寬?

m_list.SetColumnWidth(iCol, LVSCW_AUTOSIZE); 
int nTextWidth = m_list.GetColumnWidth(iCol); 
m_list.SetColumnWidth(iCol, LVSCW_AUTOSIZE_USEHEADER); 
int nColTitleWidth = m_list.GetColumnWidth(iCol); 
m_list.SetColumnWidth(iCol,max(nTextWidth, nColTitleWidth)); 

計算列寬,使用列表中未被選擇的項的字體,其中
作爲所選項目的字體(粗體字體)不會很寬,因此即使它們具有相同的內容,也會有一些內容無法顯示在
所選項目中。

我可以設置使用哪種字體來計算列寬嗎?
我試着在上面的代碼之前設置字體,但是沒有效果。
任何建議將不勝感激。

回答

相關問題