Как уведомить все элементы управления в CTabCtrl о том, что они должны быть перерисованы (должны изменить их размер)?

Я получил экземпляр MYListCtrl, который является производным от класса CListCtrl в CTabCtrl пример. Я реализовал onSize метод для MYCListCtrl и сопоставил его с WM_SIZE сообщение.

Я хочу изменить размер MYListCtrl при изменении размера окна, включающего CTabCtrl, изменение размера должно основываться на измерениях CTabCtrl. Как я могу уведомить MYListCtrl о необходимости изменения размера?

1 ответ

Решение

Вам нужно реализовать onsize для родителя, то есть элемент управления tab. Когда вызывается вкладка control.onresize, она, в свою очередь, должна изменить размер элемента управления списком. С setwindopos вы можете изменить размер вашего списка управления. Что-то вроде этого:

void MyTabControl::OnSize(UINT nType, int cx, int cy)
{
    m_ListControl.SetWindowPos(/*various parameters */);
}
Другие вопросы по тегам