---
name: "wxMDIChildFrame"
section: "3erl"
platform: "linux"
package: "erlang-manpages"
version: "1:25.2.3+dfsg-1+deb12u4"
release: "Debian 12 (Bookworm)"
platforms: ["linux"]
url: "https://new.carta.tech/wxMDIChildFrame"
---

# wxMDIChildFrame(3erl)

Functions for wxMDIChildFrame class

## NAME

wxMDIChildFrame - Functions for wxMDIChildFrame class

## DESCRIPTION

An MDI child frame is a frame that can only exist inside a *wxMDIClientWindow*, which is itself a child of *wxMDIParentFrame*.

Styles

This class supports the following styles:

All of the standard *wxFrame* styles can be used but most of them are ignored by TDI-based MDI implementations.

Remark: Although internally an MDI child frame is a child of the MDI client window, in wxWidgets you create it as a child of *wxMDIParentFrame*. In fact, you can usually forget that the client window exists. MDI child frames are clipped to the area of the MDI client window, and may be iconized on the client window. You can associate a menubar with a child frame as usual, although an MDI child doesn't display its menubar under its own title bar. The MDI parent frame's menubar will be changed to reflect the currently active child frame. If there are currently no children, the parent frame's own menubar will be displayed.

See: *wxMDIClientWindow*, *wxMDIParentFrame*, *wxFrame*

This class is derived (and can use functions) from: *wxFrame* *wxTopLevelWindow* *wxWindow* *wxEvtHandler*

wxWidgets docs: wxMDIChildFrame

## DATA TYPES

```
wxMDIChildFrame() = wx:wx_object()
```

## EXPORTS

```
new() -> wxMDIChildFrame()
```

Default constructor.

```
new(Parent, Id, Title) -> wxMDIChildFrame()
```

Types:

Parent = wxMDIParentFrame:wxMDIParentFrame()\
 Id = integer()\
 Title = unicode:chardata()\

```
new(Parent, Id, Title, Options :: [Option]) -> wxMDIChildFrame()
```

Types:

Parent = wxMDIParentFrame:wxMDIParentFrame()\
 Id = integer()\
 Title = unicode:chardata()\
 Option = \
\
     {pos, {X :: integer(), Y :: integer()}} \|\
\
     {size, {W :: integer(), H :: integer()}} \|\
\
     {style, integer()}\

Constructor, creating the window.

See: *create/5*

```
destroy(This :: wxMDIChildFrame()) -> ok
```

Destructor.

Destroys all child windows and menu bar if present.

```
activate(This) -> ok
```

Types:

This = wxMDIChildFrame()\

Activates this MDI child frame.

See: *maximize/2*, *restore/1*

```
create(This, Parent, Id, Title) -> boolean()
```

Types:

This = wxMDIChildFrame()\
 Parent = wxMDIParentFrame:wxMDIParentFrame()\
 Id = integer()\
 Title = unicode:chardata()\

```
create(This, Parent, Id, Title, Options :: [Option]) -> boolean()
```

Types:

This = wxMDIChildFrame()\
 Parent = wxMDIParentFrame:wxMDIParentFrame()\
 Id = integer()\
 Title = unicode:chardata()\
 Option = \
\
     {pos, {X :: integer(), Y :: integer()}} \|\
\
     {size, {W :: integer(), H :: integer()}} \|\
\
     {style, integer()}\

Used in two-step frame construction.

See *new/4* for further details.

```
maximize(This) -> ok
```

Types:

This = wxMDIChildFrame()\

```
maximize(This, Options :: [Option]) -> ok
```

Types:

This = wxMDIChildFrame()\
 Option = {maximize, boolean()}\

Maximizes this MDI child frame.

This function doesn't do anything if *IsAlwaysMaximized()* (not implemented in wx) returns true.

See: *activate/1*, *restore/1*

```
restore(This) -> ok
```

Types:

This = wxMDIChildFrame()\

Restores this MDI child frame (unmaximizes).

This function doesn't do anything if *IsAlwaysMaximized()* (not implemented in wx) returns true.

See: *activate/1*, *maximize/2*
