В моей программе MFC я использую разделитель для создания двух панелей. Теперь я хочу снова разделить одну из этих панелей пополам и добавить другое представление. Может ли кто-нибудь рассказать мне, как это сделать, или указать мне направление кода?
Я бы предпочел сам кодировать, поэтому меня не интересуют настраиваемые производные классы, если они не являются чрезвычайно простыми.
Спасибо!





Я не эксперт в MFC, но нельзя ли просто поставить сплиттер в одну из панелей, сделанных с помощью первого сплиттера? это как мы делаем в winform ....
В CMainFrame::OnCreateClient
// Create splitter with 2 rows and 1 col
m_wndSplitter.CreateStatic(this, 2, 1);
// Create a view in the top row
m_wndSplitter.CreateView(0, 0, RUNTIME_CLASS(CView1), CSize(100, 100), pContext);
// Create a 2 column splitter that will go in the bottom row of the first
m_wndSplitter2.CreateStatic(&m_wndSplitter, 1, 2, WS_CHILD|WS_VISIBLE, m_wndSplitter.IdFromRowCol(1, 0));
// Create views for the bottom splitter
m_wndSplitter2.CreateView(0, 0, RUNTIME_CLASS(CView2), CSize(100, 100), pContext);
m_wndSplitter2.CreateView(0, 1, RUNTIME_CLASS(CView3), CSize(100, 100), pContext);
...
Попробуйте это: m_wndSplitter2.CreateStatic (& m_wndSplitter, 1, 2, WS_CHILD | WS_VISIBLE, m_wndSplitter.IdFromRowCol (1, 0));
Роб, ты классный: D Не могу сказать, как долго я боролся с этим сегодня: D
Нет, начальное разделение выполняется в mainfrm, и представления связаны с панелями там.