имеется TabControl с четырьмя закладками, в качестве закладок
диалоги, переключение между ними осуществляется с помощью
void CDocumentDlg::OnSelchangeTabsections(NMHDR* pNMHDR, LRESULT* pResult)
{
int iTab = m_pTabSections->GetCurSel();
TC_ITEM TabItem;
TabItem.mask = TCIF_PARAM;
m_pTabSections->GetItem(iTab, &TabItem);
CWnd* pWnd = (CWnd *)TabItem.lParam; pWnd->ShowWindow(SW_SHOW);
m_pTabSections->SetItem(i, &TabItem);
}
}
названия меняются, а исчезает диалог текущей закладки, после переключения между закладками диалог появляется.
Здравствуйте, AleP, Вы писали:
AP>названия меняются, а исчезает диалог текущей закладки, после переключения между закладками диалог появляется.
Да, есть такая фишка.
Попробуй
SetActivePage(GetActivePage());
... << RSDN@Home 1.0 beta 4 >> Motion Picture So undtrack — Sycamore Trees
Any intelligent fool can make things bigger, more complex, and more violent. It takes a touch of genius — and a lot of courage — to move in the opposite direction. -- Albert Einstein
Re[2]: проблема с отображением закладок в CTabCtrl
Здравствуйте, is, Вы писали:
is>Здравствуйте, AleP, Вы писали:
AP>>названия меняются, а исчезает диалог текущей закладки, после переключения между закладками диалог появляется.
is>Да, есть такая фишка. is>Попробуй
is>
is>SetActivePage(GetActivePage());
is>
is>
Это невозможно сделать пооскольку у меня используется не CPropertySheet, а CTabCtrl
Даже же если я после изменения названий закладок, делаю текущую закладку снова активной и отображаю диалог, он появляется и тут же исчезает.
void CDocumentDlg::OnViewChanged(WPARAM wParam, LPARAM lParam)
{
USES_CONVERSION;
int SelTab = m_pTabSections->GetCurSel();
if(SelTab == -1)
SelTab = 0;
Здравствуйте, AleP, Вы писали:
AP>Здравствуйте, is, Вы писали:
is>>Здравствуйте, AleP, Вы писали:
AP>>>названия меняются, а исчезает диалог текущей закладки, после переключения между закладками диалог появляется.
is>>Да, есть такая фишка. is>>Попробуй
is>>
is>>SetActivePage(GetActivePage());
is>>
is>>
AP> AP>Это невозможно сделать пооскольку у меня используется не CPropertySheet, а CTabCtrl
Да, это для CPropertySheet, но никто не мешает тебе повторить это и для CTabCtrl
Например, посылкой сообщений TCM_GETCURSEL и TCM_SETCURSEL, либо макросов (будет работать не только для MFC , либо вызовом соответсвующих членов CTabCtrl.
AP>Даже же если я после изменения названий закладок, делаю текущую закладку снова активной и отображаю диалог, он появляется и тут же исчезает.
Any intelligent fool can make things bigger, more complex, and more violent. It takes a touch of genius — and a lot of courage — to move in the opposite direction. -- Albert Einstein
Re[4]: проблема с отображением закладок в CTabCtrl
Здравствуйте, SlaG, Вы писали:
SG>Может быть проблема в иерархии: SG>1.Диалоги(pages) должны иметь стиль WS_CHILD SG>2.Parent window для них должен быть tab control