Mfc 更新属性页或选项卡控件布局

Mfc 更新属性页或选项卡控件布局,mfc,cpropertysheet,Mfc,Cpropertysheet,更改选项卡控件的选项卡标题中的文本后,如何告诉它重新计算子选项卡的布局(例如,如果新选项卡占用两行) 我正在更改属性页中的选项卡文本,如下所示: TC_ITEM ti; ti.mask = TCIF_TEXT; ti.pszText = _T("whatever...."); CTabCtrl *pTabs = ((CPropertySheetEx *)GetParent())->GetTabControl(); pTabs->SetItem(m_nIdx, &ti); 我

更改选项卡控件的选项卡标题中的文本后,如何告诉它重新计算子选项卡的布局(例如,如果新选项卡占用两行)

我正在更改属性页中的选项卡文本,如下所示:

TC_ITEM ti;
ti.mask = TCIF_TEXT;
ti.pszText = _T("whatever....");
CTabCtrl *pTabs = ((CPropertySheetEx *)GetParent())->GetTabControl();
pTabs->SetItem(m_nIdx, &ti);

我查看了MFC源代码(在VC++6.0中为dlgprop.cpp),特别是:

BOOL CPropertySheet::OnInitDialog()

您需要的计算似乎已经在那里完成了。

只需尝试调用
OnInitDialog()
。它只调整属性页窗口的大小。

当然,您可以查看源代码以获得更多提示。

这可能会奏效,但我选择只启用StackedTabs(FALSE),而不是在我的程序中引入这种复杂性。哦,我原以为您需要堆叠行,但它们的外观有问题:)当然,您可以发布解决方案作为答案。无论如何,干杯。