У меня основная рама с разветвителем. Слева у меня есть (образно названный) CAppView_Leftand, а справа у меня есть CAppView_Right_1 и CAppView_Right_2. С помощью следующего кода я правильно инициализирую два основных представления:
if (!m_wndSplitter.CreateStatic(this, 1, 2))
{
TRACE0("Failed to CreateStaticSplitter\n");
return FALSE;
}
else
if (!m_wndSplitter.CreateView(0, 0, RUNTIME_CLASS(CAppView_Left), CSize(300, 200), pContext))
{
TRACE0("Failed to create left pane\n");
return FALSE;
}
else
if (!m_wndSplitter.CreateView(0, 1, RUNTIME_CLASS(CAppView_Right_1), CSize(375, 200), pContext))
{
TRACE0("Failed to create first right pane\n");
return FALSE;
}
...
То, что я хотел бы сделать, это создать второй вид внутри правой рамки, однако, когда я пытаюсь добавить это:
if (!m_wndSplitter.CreateView(0, 1, RUNTIME_CLASS(CAppView_Right_2), CSize(375, 200), pContext))
{
TRACE0("Failed to create first right pane\n");
return FALSE;
}
VS компилируется, но не запускает приложение, вызывая исключение, сообщающее, что я уже определил представление.
Может кто-нибудь подсказать, как мне это сделать? Кроме того, как переключаться между представлениями из вида или класса документа?