2014-12-11 3 views
1

Я использую SetIconSpacing() в моем значке значка CListCtrl, и интервал прекрасен, кроме того, что я также показываю имя изображения под изображением. Прямо сейчас я заставляю интервал m_ctrlList.SetIconSpacing(CSize(THUMBNAIL_WIDTH, THUMBNAIL_HEIGHT+20));, где 20 представляет высоту текста. Есть ли способ получить высоту текста из элемента управления?CListCtrl SetIconSpacing включает текст

Я использую стандартный контроль, не смешной бизнес.

Большое спасибо

ответ

1

Вы можете использовать GetTextExtentPoint32() функцию. Вот что вам нужно сделать.

  1. Использование/создание любых DeviceContext (лучше всего CClientDC).
  2. Получите шрифт от CListCtrl и назначьте шрифт dc с помощью функции SelectObject().
  3. Теперь используйте функцию GetTextExtentPoint32() и получите высоту шрифта.
  4. Теперь установите старый шрифт обратно в DC.

Всё.

Смежные вопросы