wxWidgets/docs/latex/wx/nbsizer.tex

55 lines
1.9 KiB
TeX
Raw Normal View History

\section{\class{wxNotebookSizer}}\label{wxnotebooksizer}
wxNotebookSizer is a specialized sizer to make sizers work in connection
with using notebooks. This sizer is different from any other sizer as
you must not add any children to it - instead, it queries the notebook class itself.
The only thing this sizer does is to determine the size of the biggest
page of the notebook and report an adjusted minimal size to a more toplevel
sizer.
In order to query the size of notebook page, this page needs to have its
own sizer, otherwise the wxNotebookSizer will ignore it. Notebook pages
get there sizer by assiging one to them using \helpref{wxWindow::SetSizer}{wxwindowsetsizer}
and setting the auto-layout option to TRUE using
\helpref{wxWindow::SetAutolayout}{wxwindowsetautoLayout}. Here is one
example showing how to add a notebook page that the notebook sizer is
aware of:
\begin{verbatim}
wxNotebook *notebook = new wxNotebook( &dialog, -1 );
wxNotebookSizer *nbs = new wxNotebookSizer( notebook );
// Add panel as notebook page
wxPanel *panel = new wxPanel( notebook, -1 );
notebook->AddPage( panel, "My Notebook Page" );
wxBoxSizer *panelsizer = new wxBoxSizer( wxVERTICAL );
// Add controls to panel and panelsizer here...
panel->SetAutoLayout( TRUE );
panel->SetSizer( panelsizer );
\end{verbatim}
See also \helpref{wxSizer}{wxsizer}, \helpref{wxNotebook}{wxnotebook}.
\wxheading{Derived from}
\helpref{wxSizer}{wxsizer}\\
\helpref{wxObject}{wxobject}
\latexignore{\rtfignore{\wxheading{Members}}}
\membersection{wxNotebookSizer::wxNotebookSizer}\label{wxnotebooksizerwxnotebooksizer}
\func{}{wxNotebookSizer}{\param{wxNotebook* }{notebook}}
Constructor. It takes an associated notebook as its only parameter.
\membersection{wxNotebookSizer::GetNotebook}\label{wxnotebooksizergetnotebook}
\func{wxNotebook*}{GetNotebook}{\void}
Returns the notebook associated with the sizer.