a660d684ed
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@11 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
66 lines
1.7 KiB
TeX
66 lines
1.7 KiB
TeX
\section{wxSplitterWindow overview}\label{wxsplitterwindowoverview}
|
|
|
|
Classes: \helpref{wxSplitterWindow}{wxsplitterwindow}
|
|
|
|
The following screenshot shows the appearance of a splitter window with a vertical split.
|
|
|
|
$$\image{8cm;0cm}{splitter.eps}$$
|
|
|
|
The style wxSP\_3D has been used to show a 3D border and 3D sash.
|
|
|
|
\subsection{Example}
|
|
|
|
The following fragment shows how to create a splitter window, creating two
|
|
subwindows and hiding one of them.
|
|
|
|
{\small
|
|
\begin{verbatim}
|
|
splitter = new wxSplitterWindow(this, 0, 0, 400, 400, wxSP_3D);
|
|
|
|
leftCanvas = new MyCanvas(splitter);
|
|
leftCanvas->SetBackground(wxRED_BRUSH);
|
|
leftCanvas->SetScrollbars(20, 20, 50, 50, 4, 4);
|
|
|
|
rightCanvas = new MyCanvas(splitter);
|
|
rightCanvas->SetBackground(wxCYAN_BRUSH);
|
|
rightCanvas->SetScrollbars(20, 20, 50, 50, 4, 4);
|
|
rightCanvas->Show(FALSE);
|
|
|
|
splitter->Initialize(leftCanvas);
|
|
|
|
// Set this to prevent unsplitting
|
|
// splitter->SetMinimumPaneSize(20);
|
|
\end{verbatim}
|
|
}
|
|
|
|
The next fragment shows how the splitter window can be manipulated after creation.
|
|
|
|
{\small
|
|
\begin{verbatim}
|
|
void MyFrame::OnSplitVertical(wxCommandEvent& event)
|
|
{
|
|
if ( splitter->IsSplit() )
|
|
splitter->Unsplit();
|
|
leftCanvas->Show(TRUE);
|
|
rightCanvas->Show(TRUE);
|
|
splitter->SplitVertically( leftCanvas, rightCanvas );
|
|
}
|
|
|
|
void MyFrame::OnSplitHorizontal(wxCommandEvent& event)
|
|
{
|
|
if ( splitter->IsSplit() )
|
|
splitter->Unsplit();
|
|
leftCanvas->Show(TRUE);
|
|
rightCanvas->Show(TRUE);
|
|
splitter->SplitHorizontally( leftCanvas, rightCanvas );
|
|
}
|
|
|
|
void MyFrame::OnUnsplit(wxCommandEvent& event)
|
|
{
|
|
if ( splitter->IsSplit() )
|
|
splitter->Unsplit();
|
|
}
|
|
\end{verbatim}
|
|
}
|
|
|