]> git.saurik.com Git - wxWidgets.git/blame - docs/latex/wx/frame.tex
Controls will readjust their size and minsize when SetLabel or SetFont
[wxWidgets.git] / docs / latex / wx / frame.tex
CommitLineData
a660d684
KB
1\section{\class{wxFrame}}\label{wxframe}
2
1c4f8f8d
VZ
3A frame is a window whose size and position can (usually) be changed by the
4user. It usually has thick borders and a title bar, and can optionally contain
5a menu bar, toolbar and status bar. A frame can contain any window that is not
6a frame or dialog.
a660d684 7
1c4f8f8d
VZ
8A frame that has a status bar and toolbar created via the
9CreateStatusBar/CreateToolBar functions manages these windows, and adjusts the
10value returned by GetClientSize to reflect the remaining size available to
11application windows.
81d66cf3 12
a660d684
KB
13\wxheading{Derived from}
14
15\helpref{wxWindow}{wxwindow}\\
16\helpref{wxEvtHandler}{wxevthandler}\\
17\helpref{wxObject}{wxobject}
18
954b8ae6
JS
19\wxheading{Include files}
20
21<wx/frame.h>
22
a660d684
KB
23\wxheading{Window styles}
24
25\twocolwidtha{5cm}
26\begin{twocollist}\itemsep=0pt
850c6ed4 27\twocolitem{\windowstyle{wxDEFAULT\_FRAME\_STYLE}}{Defined as {\bf wxMINIMIZE\_BOX \pipe wxMAXIMIZE\_BOX \pipe wxRESIZE\_BORDER \pipe wxSYSTEM\_MENU \pipe wxCAPTION \pipe wxCLOSE\_BOX}.}
6453876e 28\twocolitem{\windowstyle{wxICONIZE}}{Display the frame iconized (minimized). Windows only. }
a660d684 29\twocolitem{\windowstyle{wxCAPTION}}{Puts a caption on the frame.}
f6bcfd97
BP
30\twocolitem{\windowstyle{wxMINIMIZE}}{Identical to {\bf wxICONIZE}. Windows only.}
31\twocolitem{\windowstyle{wxMINIMIZE\_BOX}}{Displays a minimize box on the frame.}
32\twocolitem{\windowstyle{wxMAXIMIZE}}{Displays the frame maximized. Windows only.}
33\twocolitem{\windowstyle{wxMAXIMIZE\_BOX}}{Displays a maximize box on the frame.}
850c6ed4 34\twocolitem{\windowstyle{wxCLOSE\_BOX}}{Displays a close box on the frame.}
9dfef5ac
VZ
35\twocolitem{\windowstyle{wxSTAY\_ON\_TOP}}{Stay on top of all other windows,
36see also wxFRAME\_FLOAT\_ON\_PARENT. Windows only.}
f6bcfd97 37\twocolitem{\windowstyle{wxSYSTEM\_MENU}}{Displays a system menu.}
b3daa5a3
VZ
38\twocolitem{\windowstyle{wxRESIZE\_BORDER}}{Displays a resizeable border around the window.}
39\twocolitem{\windowstyle{wxFRAME\_TOOL\_WINDOW}}{Causes a frame with a small
40titlebar to be created; the frame does not appear in the taskbar under Windows.}
9dfef5ac
VZ
41\twocolitem{\windowstyle{wxFRAME\_NO\_TASKBAR}}{Creates an otherwise normal
42frame but it does not appear in the taskbar under Windows (note that it will
43minimize to the desktop window which may seem strange to the users and thus it
44might be better to use this style only without wxMINIMIZE\_BOX style).
45Has no effect under other platforms.}
46\twocolitem{\windowstyle{wxFRAME\_FLOAT\_ON\_PARENT}}{The frame will always be
47on top of its parent (unlike wxSTAY\_ON\_TOP). A frame created with this style
48must have a non-NULL parent.}
26a80c22 49\twocolitem{\windowstyle{wxFRAME\_EX\_CONTEXTHELP}}{Under Windows, puts a query button on the
fc2171bd 50caption. When pressed, Windows will go into a context-sensitive help mode and wxWidgets will send
26a80c22
JS
51a wxEVT\_HELP event if the user clicked on an application window. {\it Note} that this is an extended
52style and must be set by calling \helpref{SetExtraStyle}{wxwindowsetextrastyle} before Create is called (two-step construction).
335c9e32 53You cannot use this style together with wxMAXIMIZE\_BOX or wxMINIMIZE\_BOX, so
d2c2afc9 54you should use\rtfsp
c8abcf33 55{\tt wxDEFAULT\_FRAME\_STYLE \& ~ (wxMINIMIZE\_BOX | wxMAXIMIZE\_BOX)} for the
0032ddbb 56frames having this style (the dialogs don't have a minimize or a maximize box by
335c9e32 57default)}
6a7e6411
RD
58\twocolitem{\windowstyle{wxFRAME\_SHAPED}}{Windows with this style are
59 allowed to have their shape changed with the \helpref{SetShape}{wxframesetshape} method.}
a660d684
KB
60\end{twocollist}
61
f6bcfd97
BP
62The default frame style is for normal, resizeable frames. To create a frame
63which can not be resized by user, you may use the following combination of
c8abcf33 64styles: {\tt wxDEFAULT\_FRAME\_STYLE \& ~ (wxRESIZE\_BORDER \pipe wxRESIZE\_BOX \pipe wxMAXIMIZE\_BOX)}.
f6bcfd97
BP
65% Note: the space after the tilde is necessary or Tex2RTF complains.
66
6453876e 67See also \helpref{window styles overview}{windowstyles}.
a660d684 68
9b67a3fd
VZ
69\wxheading{Default event processing}
70
71wxFrame processes the following events:
72
73\begin{twocollist}\itemsep=0pt
974d9c98
VZ
74\twocolitem{\helpref{wxEVT\_SIZE}{wxsizeevent}}{If the frame has exactly one
75child window, not counting the status and toolbar, this child is resized to
76take the entire frame client area. If two or more windows are present, they
1542ea39 77should be laid out explicitly either by manually handling wxEVT\_SIZE or using
9b67a3fd
VZ
78\helpref{sizers}{sizeroverview}}
79
974d9c98
VZ
80\twocolitem{\helpref{wxEVT\_MENU\_HIGHLIGHT}{wxmenuevent}}{The default
81implementation displays the \helpref{help string}{wxmenuitemgethelp} associated
82with the selected item in the first pane of the status bar, if there is one.}
9b67a3fd
VZ
83\end{twocollist}
84
a660d684
KB
85\wxheading{Remarks}
86
f4fcc291 87An application should normally define an \helpref{wxCloseEvent}{wxcloseevent} handler for the
a660d684
KB
88frame to respond to system close events, for example so that related data and subwindows can be cleaned up.
89
90\wxheading{See also}
91
92\helpref{wxMDIParentFrame}{wxmdiparentframe}, \helpref{wxMDIChildFrame}{wxmdichildframe},\rtfsp
93\helpref{wxMiniFrame}{wxminiframe}, \helpref{wxDialog}{wxdialog}
94
95\latexignore{\rtfignore{\wxheading{Members}}}
96
97\membersection{wxFrame::wxFrame}\label{wxframeconstr}
98
99\func{}{wxFrame}{\void}
100
101Default constructor.
102
eaaa6a06 103\func{}{wxFrame}{\param{wxWindow* }{parent}, \param{wxWindowID }{id},\rtfsp
a660d684
KB
104\param{const wxString\& }{title}, \param{const wxPoint\&}{ pos = wxDefaultPosition},\rtfsp
105\param{const wxSize\&}{ size = wxDefaultSize}, \param{long}{ style = wxDEFAULT\_FRAME\_STYLE},\rtfsp
106\param{const wxString\& }{name = ``frame"}}
107
108Constructor, creating the window.
109
110\wxheading{Parameters}
111
112\docparam{parent}{The window parent. This may be NULL. If it is non-NULL, the frame will
113always be displayed on top of the parent window on Windows.}
114
115\docparam{id}{The window identifier. It may take a value of -1 to indicate a default value.}
116
117\docparam{title}{The caption to be displayed on the frame's title bar.}
118
119\docparam{pos}{The window position. A value of (-1, -1) indicates a default position, chosen by
fc2171bd 120either the windowing system or wxWidgets, depending on platform.}
a660d684
KB
121
122\docparam{size}{The window size. A value of (-1, -1) indicates a default size, chosen by
fc2171bd 123either the windowing system or wxWidgets, depending on platform.}
a660d684
KB
124
125\docparam{style}{The window style. See \helpref{wxFrame}{wxframe}.}
126
127\docparam{name}{The name of the window. This parameter is used to associate a name with the item,
128allowing the application user to set Motif resource values for
129individual windows.}
130
131\wxheading{Remarks}
132
133For Motif, MWM (the Motif Window Manager) should be running for any window styles to work
134(otherwise all styles take effect).
135
136\wxheading{See also}
137
138\helpref{wxFrame::Create}{wxframecreate}
139
140\membersection{wxFrame::\destruct{wxFrame}}
141
142\func{void}{\destruct{wxFrame}}{\void}
143
144Destructor. Destroys all child windows and menu bar if present.
145
146\membersection{wxFrame::Centre}\label{wxframecentre}
147
eaaa6a06 148\func{void}{Centre}{\param{int}{ direction = wxBOTH}}
a660d684
KB
149
150Centres the frame on the display.
151
152\wxheading{Parameters}
153
154\docparam{direction}{The parameter may be {\tt wxHORIZONTAL}, {\tt wxVERTICAL} or {\tt wxBOTH}.}
155
156\membersection{wxFrame::Command}\label{wxframecommand}
157
158\func{void}{Command}{\param{int }{id}}
159
160Simulate a menu command.
161
162\wxheading{Parameters}
163
164\docparam{id}{The identifier for a menu item.}
165
166\membersection{wxFrame::Create}\label{wxframecreate}
167
eaaa6a06 168\func{bool}{Create}{\param{wxWindow* }{parent}, \param{wxWindowID }{id},\rtfsp
a660d684
KB
169\param{const wxString\& }{title}, \param{const wxPoint\&}{ pos = wxDefaultPosition},\rtfsp
170\param{const wxSize\&}{ size = wxDefaultSize}, \param{long}{ style = wxDEFAULT\_FRAME\_STYLE},\rtfsp
171\param{const wxString\& }{name = ``frame"}}
172
173Used in two-step frame construction. See \helpref{wxFrame::wxFrame}{wxframeconstr}\rtfsp
174for further details.
175
176\membersection{wxFrame::CreateStatusBar}\label{wxframecreatestatusbar}
177
81d66cf3
JS
178\func{virtual wxStatusBar*}{CreateStatusBar}{\param{int}{ number = 1},
179 \param{long}{ style = 0},
180 \param{wxWindowID}{ id = -1}, \param{const wxString\&}{ name = "statusBar"}}
a660d684
KB
181
182Creates a status bar at the bottom of the frame.
183
184\wxheading{Parameters}
185
186\docparam{number}{The number of fields to create. Specify a
187value greater than 1 to create a multi-field status bar.}
188
81d66cf3
JS
189\docparam{style}{The status bar style. See \helpref{wxStatusBar}{wxstatusbar} for a list
190of valid styles.}
191
192\docparam{id}{The status bar window identifier. If -1, an identifier will be chosen by
fc2171bd 193wxWidgets.}
81d66cf3
JS
194
195\docparam{name}{The status bar window name.}
196
a660d684
KB
197\wxheading{Return value}
198
81d66cf3 199A pointer to the the status bar if it was created successfully, NULL otherwise.
a660d684
KB
200
201\wxheading{Remarks}
202
203The width of the status bar is the whole width of the frame (adjusted automatically when
204resizing), and the height and text size are chosen by the host windowing system.
205
206By default, the status bar is an instance of wxStatusBar. To use a different class,
207override \helpref{wxFrame::OnCreateStatusBar}{wxframeoncreatestatusbar}.
208
209Note that you can put controls and other windows on the status bar if you wish.
210
211\wxheading{See also}
212
213\helpref{wxFrame::SetStatusText}{wxframesetstatustext},\rtfsp
214\helpref{wxFrame::OnCreateStatusBar}{wxframeoncreatestatusbar},\rtfsp
215\helpref{wxFrame::GetStatusBar}{wxframegetstatusbar}
216
81d66cf3
JS
217\membersection{wxFrame::CreateToolBar}\label{wxframecreatetoolbar}
218
219\func{virtual wxToolBar*}{CreateToolBar}{\param{long}{ style = wxNO\_BORDER \pipe wxTB\_HORIZONTAL},
220 \param{wxWindowID}{ id = -1}, \param{const wxString\&}{ name = "toolBar"}}
221
222Creates a toolbar at the top or left of the frame.
223
224\wxheading{Parameters}
225
226\docparam{style}{The toolbar style. See \helpref{wxToolBar}{wxtoolbar} for a list
227of valid styles.}
228
229\docparam{id}{The toolbar window identifier. If -1, an identifier will be chosen by
fc2171bd 230wxWidgets.}
81d66cf3
JS
231
232\docparam{name}{The toolbar window name.}
233
234\wxheading{Return value}
235
236A pointer to the the toolbar if it was created successfully, NULL otherwise.
237
238\wxheading{Remarks}
239
240By default, the toolbar is an instance of wxToolBar (which is defined to be
241a suitable toolbar class on each platform, such as wxToolBar95). To use a different class,
242override \helpref{wxFrame::OnCreateToolBar}{wxframeoncreatetoolbar}.
243
244When a toolbar has been created with this function, or made known to the frame
245with \helpref{wxFrame::SetToolBar}{wxframesettoolbar}, the frame will manage the toolbar
246position and adjust the return value from \helpref{wxWindow::GetClientSize}{wxwindowgetclientsize} to
247reflect the available space for application windows.
248
249\wxheading{See also}
250
251\helpref{wxFrame::CreateStatusBar}{wxframecreatestatusbar},\rtfsp
252\helpref{wxFrame::OnCreateToolBar}{wxframeoncreatetoolbar},\rtfsp
253\helpref{wxFrame::SetToolBar}{wxframesettoolbar},\rtfsp
254\helpref{wxFrame::GetToolBar}{wxframegettoolbar}
255
1c4f8f8d
VZ
256\membersection{wxFrame::GetClientAreaOrigin}\label{wxframegetclientareaorigin}
257
258\constfunc{wxPoint}{GetClientAreaOrigin}{\void}
259
260Returns the origin of the frame client area (in client coordinates). It may be
261different from (0, 0) if the frame has a toolbar.
262
a660d684
KB
263\membersection{wxFrame::GetMenuBar}\label{wxframegetmenubar}
264
265\constfunc{wxMenuBar*}{GetMenuBar}{\void}
266
267Returns a pointer to the menubar currently associated with the frame (if any).
268
269\wxheading{See also}
270
271\helpref{wxFrame::SetMenuBar}{wxframesetmenubar}, \helpref{wxMenuBar}{wxmenubar}, \helpref{wxMenu}{wxmenu}
272
273\membersection{wxFrame::GetStatusBar}\label{wxframegetstatusbar}
274
fa482912 275\constfunc{wxStatusBar*}{GetStatusBar}{\void}
a660d684
KB
276
277Returns a pointer to the status bar currently associated with the frame (if any).
278
279\wxheading{See also}
280
281\helpref{wxFrame::CreateStatusBar}{wxframecreatestatusbar}, \helpref{wxStatusBar}{wxstatusbar}
282
0b0625e9
JS
283\membersection{wxFrame::GetStatusBarPane}\label{wxframegetstatusbarpane}
284
285\func{int}{GetStatusBarPane}{\void}
286
287Returns the status bar pane used to display menu and toolbar help.
288
289\wxheading{See also}
290
291\helpref{wxFrame::SetStatusBarPane}{wxframesetstatusbarpane}
292
a660d684
KB
293\membersection{wxFrame::GetTitle}\label{wxframegettitle}
294
fa482912 295\constfunc{wxString}{GetTitle}{\void}
a660d684 296
fa482912 297Gets a string containing the frame title. See \helpref{wxFrame::SetTitle}{wxframesettitle}.
a660d684 298
81d66cf3
JS
299\membersection{wxFrame::GetToolBar}\label{wxframegettoolbar}
300
fa482912 301\constfunc{wxToolBar*}{GetToolBar}{\void}
81d66cf3
JS
302
303Returns a pointer to the toolbar currently associated with the frame (if any).
304
305\wxheading{See also}
306
307\helpref{wxFrame::CreateToolBar}{wxframecreatetoolbar}, \helpref{wxToolBar}{wxtoolbar},\rtfsp
308\helpref{wxFrame::SetToolBar}{wxframesettoolbar}
309
a660d684
KB
310\membersection{wxFrame::Iconize}\label{wxframeiconize}
311
fa482912 312\func{void}{Iconize}{\param{bool}{ iconize}}
a660d684 313
3dd9b88a 314Iconizes or restores the frame.
a660d684
KB
315
316\wxheading{Parameters}
317
cc81d32f 318\docparam{iconize}{If true, iconizes the frame; if false, shows and restores it.}
a660d684
KB
319
320\wxheading{See also}
321
322\helpref{wxFrame::IsIconized}{wxframeisiconized}, \helpref{wxFrame::Maximize}{wxframemaximize}.
323
0133d06b
VS
324\membersection{wxFrame::IsFullScreen}\label{wxframeisfullscreen}
325
326\func{bool}{IsFullScreen}{\void}
327
cc81d32f 328Returns true if the frame is in fullscreen mode.
0133d06b
VS
329
330\wxheading{See also}
331
332\helpref{wxFrame::ShowFullScreen}{wxframeshowfullscreen}
333
a660d684
KB
334\membersection{wxFrame::IsIconized}\label{wxframeisiconized}
335
94b49b93 336\constfunc{bool}{IsIconized}{\void}
a660d684 337
cc81d32f 338Returns true if the frame is iconized.
a660d684 339
94b49b93
JS
340\membersection{wxFrame::IsMaximized}\label{wxframeismaximized}
341
342\constfunc{bool}{IsMaximized}{\void}
343
cc81d32f 344Returns true if the frame is maximized.
94b49b93 345
a660d684
KB
346\membersection{wxFrame::Maximize}\label{wxframemaximize}
347
fa482912 348\func{void}{Maximize}{\param{bool }{maximize}}
a660d684
KB
349
350Maximizes or restores the frame.
351
352\wxheading{Parameters}
353
cc81d32f 354\docparam{maximize}{If true, maximizes the frame, otherwise it restores it.}
a660d684
KB
355
356\wxheading{Remarks}
357
358This function only works under Windows.
359
360\wxheading{See also}
361
362\helpref{wxFrame::Iconize}{wxframeiconize}
363
a660d684
KB
364\membersection{wxFrame::OnCreateStatusBar}\label{wxframeoncreatestatusbar}
365
dbdb39b2 366\func{virtual wxStatusBar*}{OnCreateStatusBar}{\param{int }{number},
81d66cf3
JS
367 \param{long}{ style},
368 \param{wxWindowID}{ id}, \param{const wxString\&}{ name}}
a660d684
KB
369
370Virtual function called when a status bar is requested by \helpref{wxFrame::CreateStatusBar}{wxframecreatestatusbar}.
371
372\wxheading{Parameters}
373
374\docparam{number}{The number of fields to create.}
375
81d66cf3
JS
376\docparam{style}{The window style. See \helpref{wxStatusBar}{wxstatusbar} for a list
377of valid styles.}
378
379\docparam{id}{The window identifier. If -1, an identifier will be chosen by
fc2171bd 380wxWidgets.}
81d66cf3
JS
381
382\docparam{name}{The window name.}
383
a660d684
KB
384\wxheading{Return value}
385
386A status bar object.
387
388\wxheading{Remarks}
389
390An application can override this function to return a different kind of status bar. The default
391implementation returns an instance of \helpref{wxStatusBar}{wxstatusbar}.
392
393\wxheading{See also}
394
395\helpref{wxFrame::CreateStatusBar}{wxframecreatestatusbar}, \helpref{wxStatusBar}{wxstatusbar}.
396
81d66cf3
JS
397\membersection{wxFrame::OnCreateToolBar}\label{wxframeoncreatetoolbar}
398
399\func{virtual wxToolBar*}{OnCreateToolBar}{\param{long}{ style},
400 \param{wxWindowID}{ id}, \param{const wxString\&}{ name}}
401
402Virtual function called when a toolbar is requested by \helpref{wxFrame::CreateToolBar}{wxframecreatetoolbar}.
403
404\wxheading{Parameters}
405
406\docparam{style}{The toolbar style. See \helpref{wxToolBar}{wxtoolbar} for a list
407of valid styles.}
408
409\docparam{id}{The toolbar window identifier. If -1, an identifier will be chosen by
fc2171bd 410wxWidgets.}
81d66cf3
JS
411
412\docparam{name}{The toolbar window name.}
413
414\wxheading{Return value}
415
416A toolbar object.
417
418\wxheading{Remarks}
419
420An application can override this function to return a different kind of toolbar. The default
421implementation returns an instance of \helpref{wxToolBar}{wxtoolbar}.
422
423\wxheading{See also}
424
425\helpref{wxFrame::CreateToolBar}{wxframecreatetoolbar}, \helpref{wxToolBar}{wxtoolbar}.
426
a4f25aef
VZ
427\membersection{wxFrame::SendSizeEvent}\label{wxframesendsizeevent}
428
429\func{void}{SendSizeEvent}{\void}
430
431This function sends a dummy \helpref{size event}{wxsizeevent} to the frame
432forcing it to reevaluate its children positions. It is sometimes useful to call
433this function after adding or deleting a children after the frame creation or
434if a child size changes.
435
436Note that if the frame is using either sizers or constraints for the children
437layout, it is enough to call \helpref{Layout()}{wxwindowlayout} directly and
438this function should not be used in this case.
439
a660d684
KB
440\membersection{wxFrame::SetIcon}\label{wxframeseticon}
441
442\func{void}{SetIcon}{\param{const wxIcon\& }{icon}}
443
444Sets the icon for this frame.
445
446\wxheading{Parameters}
447
448\docparam{icon}{The icon to associate with this frame.}
449
450\wxheading{Remarks}
451
452The frame takes a `copy' of {\it icon}, but since it uses reference
453counting, the copy is very quick. It is safe to delete {\it icon} after
454calling this function.
455
9a6a5530
MB
456See also \helpref{wxIcon}{wxicon}.
457
458\membersection{wxFrame::SetIcons}\label{wxframeseticons}
459
460\func{void}{SetIcons}{\param{const wxIconBundle\& }{icons}}
461
462Sets the icons for this frame.
463
464\wxheading{Parameters}
465
466\docparam{icons}{The icons to associate with this frame.}
467
468See also \helpref{wxIconBundle}{wxiconbundle}.
469
1542ea39 470% VZ: we don't have all this any more (18.08.00)
d9b815ac
VZ
471%
472%Under Windows, instead of using {\bf SetIcon}, you can add the
473%following lines to your MS Windows resource file:
474%
475%\begin{verbatim}
476%wxSTD_MDIPARENTFRAME ICON icon1.ico
477%wxSTD_MDICHILDFRAME ICON icon2.ico
478%wxSTD_FRAME ICON icon3.ico
479%\end{verbatim}
480%
481%where icon1.ico will be used for the MDI parent frame, icon2.ico
482%will be used for MDI child frames, and icon3.ico will be used for
483%non-MDI frames.
484%
485%If these icons are not supplied, and {\bf SetIcon} is not called either,
486%then the following defaults apply if you have included wx.rc.
487%
488%\begin{verbatim}
489%wxDEFAULT_FRAME ICON std.ico
490%wxDEFAULT_MDIPARENTFRAME ICON mdi.ico
491%wxDEFAULT_MDICHILDFRAME ICON child.ico
492%\end{verbatim}
493%
494%You can replace std.ico, mdi.ico and child.ico with your own defaults
fc2171bd 495%for all your wxWidgets application. Currently they show the same icon.
a660d684 496
a660d684
KB
497\membersection{wxFrame::SetMenuBar}\label{wxframesetmenubar}
498
499\func{void}{SetMenuBar}{\param{wxMenuBar* }{menuBar}}
500
501Tells the frame to show the given menu bar.
502
503\wxheading{Parameters}
504
505\docparam{menuBar}{The menu bar to associate with the frame.}
506
507\wxheading{Remarks}
508
509If the frame is destroyed, the
510menu bar and its menus will be destroyed also, so do not delete the menu
511bar explicitly (except by resetting the frame's menu bar to another
512frame or NULL).
513
684761db 514Under Windows, a size event is generated, so be sure to initialize
a660d684
KB
515data members properly before calling {\bf SetMenuBar}.
516
684761db 517Note that on some platforms, it is not possible to call this function twice for the same frame object.
a660d684
KB
518
519\wxheading{See also}
520
521\helpref{wxFrame::GetMenuBar}{wxframegetmenubar}, \helpref{wxMenuBar}{wxmenubar}, \helpref{wxMenu}{wxmenu}.
522
1542ea39
RD
523\membersection{wxFrame::SetShape}\label{wxframesetshape}
524
bf43ff9a 525\func{bool}{SetShape}{\param{const wxRegion\&}{ region}}
1542ea39
RD
526
527If the platform supports it, sets the shape of the window to that
75173186 528depicted by {\it{region}}. The system will not display or
1542ea39
RD
529respond to any mouse event for the pixels that lie outside of the
530region. To reset the window to the normal rectangular shape simply
75173186 531call {\it{SetShape}} again with an empty region. Returns TRUE if the
1542ea39
RD
532operation is successful.
533
81d66cf3
JS
534\membersection{wxFrame::SetStatusBar}\label{wxframesetstatusbar}
535
536\func{void}{SetStatusBar}{\param{wxStatusBar*}{ statusBar}}
537
538Associates a status bar with the frame.
539
540\wxheading{See also}
541
542\helpref{wxFrame::CreateStatusBar}{wxframecreatestatusbar}, \helpref{wxStatusBar}{wxstatusbar},\rtfsp
543\helpref{wxFrame::GetStatusBar}{wxframegetstatusbar}
544
0b0625e9
JS
545\membersection{wxFrame::SetStatusBarPane}\label{wxframesetstatusbarpane}
546
547\func{void}{SetStatusBarPane}{\param{int}{ n}}
548
549Set the status bar pane used to display menu and toolbar help.
550Using -1 disables help display.
551
a660d684
KB
552\membersection{wxFrame::SetStatusText}\label{wxframesetstatustext}
553
eaaa6a06 554\func{virtual void}{SetStatusText}{\param{const wxString\& }{ text}, \param{int}{ number = 0}}
a660d684
KB
555
556Sets the status bar text and redraws the status bar.
557
558\wxheading{Parameters}
559
560\docparam{text}{The text for the status field.}
561
562\docparam{number}{The status field (starting from zero).}
563
564\wxheading{Remarks}
565
566Use an empty string to clear the status bar.
567
568\wxheading{See also}
569
570\helpref{wxFrame::CreateStatusBar}{wxframecreatestatusbar}, \helpref{wxStatusBar}{wxstatusbar}
571
572\membersection{wxFrame::SetStatusWidths}\label{wxframesetstatuswidths}
573
eaaa6a06 574\func{virtual void}{SetStatusWidths}{\param{int}{ n}, \param{int *}{widths}}
a660d684
KB
575
576Sets the widths of the fields in the status bar.
577
578\wxheading{Parameters}
579
580\wxheading{n}{The number of fields in the status bar. It must be the
581same used in \helpref{CreateStatusBar}{wxframecreatestatusbar}.}
582
583\docparam{widths}{Must contain an array of {\it n} integers, each of which is a status field width
584in pixels. A value of -1 indicates that the field is variable width; at least one
585field must be -1. You should delete this array after calling {\bf SetStatusWidths}.}
586
587\wxheading{Remarks}
588
589The widths of the variable fields are calculated from the total width of all fields,
564747ee 590minus the sum of widths of the non-variable fields, divided by the number of
a660d684
KB
591variable fields.
592
564747ee
RD
593\pythonnote{Only a single parameter is required, a Python list of
594integers.}
595
f3539882 596\perlnote{In wxPerl this method takes the field widths as parameters.}
5873607e 597
81d66cf3
JS
598\membersection{wxFrame::SetToolBar}\label{wxframesettoolbar}
599
600\func{void}{SetToolBar}{\param{wxToolBar*}{ toolBar}}
601
602Associates a toolbar with the frame.
603
604\wxheading{See also}
605
606\helpref{wxFrame::CreateToolBar}{wxframecreatetoolbar}, \helpref{wxToolBar}{wxtoolbar},\rtfsp
607\helpref{wxFrame::GetToolBar}{wxframegettoolbar}
608
a660d684
KB
609\membersection{wxFrame::SetTitle}\label{wxframesettitle}
610
611\func{virtual void}{SetTitle}{\param{const wxString\& }{ title}}
612
613Sets the frame title.
614
615\wxheading{Parameters}
616
617\docparam{title}{The frame title.}
618
619\wxheading{See also}
620
621\helpref{wxFrame::GetTitle}{wxframegettitle}
622
bf4d9b2b
JS
623\membersection{wxFrame::ShowFullScreen}\label{wxframeshowfullscreen}
624
625\func{bool}{ShowFullScreen}{\param{bool}{ show}, \param{long}{ style = wxFULLSCREEN\_ALL}}
626
716645d3
VZ
627Depending on the value of {\it show} parameter the frame is either shown full
628screen or restored to its normal state. {\it style} is a bit list containing
629some or all of the following values, which indicate what elements of the frame
630to hide in full-screen mode:
bf4d9b2b
JS
631
632\begin{itemize}\itemsep=0pt
633\item wxFULLSCREEN\_NOMENUBAR
634\item wxFULLSCREEN\_NOTOOLBAR
635\item wxFULLSCREEN\_NOSTATUSBAR
636\item wxFULLSCREEN\_NOBORDER
637\item wxFULLSCREEN\_NOCAPTION
638\item wxFULLSCREEN\_ALL (all of the above)
639\end{itemize}
640
0133d06b
VS
641This function has not been tested with MDI frames.
642
1542ea39 643Note that showing a frame full screen also actually
716645d3
VZ
644\helpref{Show()s}{wxwindowshow} if it hadn't been shown yet.
645
0133d06b 646\wxheading{See also}
bf4d9b2b 647
0133d06b 648\helpref{wxFrame::IsFullScreen}{wxframeisfullscreen}
4d2c67a9 649