Я получил класс из CListCtrl с именем CListCtrlCustomDraw и использую обработчик NM_CUSTOMDRAW для рисования списка.
Проблема в том, что у меня есть разные шрифты для выбранного элемента и невыбранного элемента, они являются переменными-членами элемента управления списком, но когда я использую
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));
для вычисления ширины столбца, в списке используется шрифт невыбранного элемента, который не такой широкий
как шрифт выбранного элемента (полужирный шрифт), поэтому там будет некоторое содержимое не может быть отображено в
выбранный элемент, даже если они имеют одинаковое содержание.
Можно ли использовать шрифт для расчета ширины столбца?
Я пытался установить шрифт перед указанными кодами, но эффекта нет.
Любой совет будет признателен.