Как изменить заголовок вкладки в приложении MDI tabbed document?
[^][^]Я создал приложение MDI Tabbed Document, используя приведенный ниже код
CMDITabInfo mdiTabParams;
mdiTabParams.m_style = CMFCTabCtrl::STYLE_3D_ONENOTE; // других стилей, доступных... mdiTabParams.m_bActiveTabCloseButton = True; // установим значение false, чтобы разместить кнопку Закрыть в правой части вкладки
mdiTabParams.m_bTabIcons = ложь; //значение true для включения иконки документа на MDI вкладок
mdiTabParams.m_bAutoColor = True; //установим значение false, чтобы отключить авто-колорит вкладки MDI
mdiTabParams.m_bDocumentMenu = истина;
EnableMDITabbedGroups (TRUE, mdiTabParams);
Как изменить заголовок каждой вкладки?По умолчанию каждая вкладка называется заголовком документа?Я хочу отобразить только часть имени документа в качестве заголовка вкладки, так как же этого добиться?
Я хочу установить разные имена для заголовка вкладки и документа.
Например,
Название документа Основная логика-STD PLC
Заголовок вкладки должен быть Основная Логика.
Я буду использовать это имя документа в заголовке фрейма
Что я уже пробовал:
Решение моей проблемы приведено в этой теме
https://social.msdn.microsoft.com/Forums/en-US/78c9a0dc-8bf4-4f07-8c0d-90cf6a5fbcb1/how-to-place-an-asterix-on-an-mdi-tabbed-document-window-to-indicate-that-the-document-was?forum=vcmfcatl[^]
void CiMyMDIChildFrame::OnUpdateFrameTitle(BOOL bAddToTitle) { CiMyDoc* pDocument = STATIC_DOWNCAST(CiMyDoc, GetActiveDocument()); CString sDocTitle; if (pDocument && !pDocument->GetTitle().IsEmpty() && pDocument->IsModified()) { sDocTitle=pDocument->m_strTitle; //this requires CiMyDoc to friend class CiMyMDIChildFrame; pDocument->m_strTitle=pDocument->GetTitle()+"*"; } CMDIChildWndEx::OnUpdateFrameTitle(bAddToTitle); if (!sDocTitle.IsEmpty()) pDocument->m_strTitle=sDocTitle; }
Но класс CDocument m_strTitle является защищенным членом, поэтому я не могу использовать это решение.