---
name: "wxRadioButton"
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/wxRadioButton"
---

# wxRadioButton(3erl)

Functions for wxRadioButton class

## NAME

wxRadioButton - Functions for wxRadioButton class

## DESCRIPTION

A radio button item is a button which usually denotes one of several mutually exclusive options. It has a text label next to a (usually) round button.

You can create a group of mutually-exclusive radio buttons by specifying *wxRB\_GROUP* for the first in the group. The group ends when another radio button group is created, or there are no more radio buttons.

Styles

This class supports the following styles:

See: Overview events, *wxRadioBox*, *wxCheckBox*

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

wxWidgets docs: wxRadioButton

## EVENTS

Event types emitted from this class: *command\_radiobutton\_selected*

## DATA TYPES

```
wxRadioButton() = wx:wx_object()
```

## EXPORTS

```
new() -> wxRadioButton()
```

Default constructor.

See: *create/5*, *wxValidator* (not implemented in wx)

```
new(Parent, Id, Label) -> wxRadioButton()
```

Types:

Parent = wxWindow:wxWindow()\
 Id = integer()\
 Label = unicode:chardata()\

```
new(Parent, Id, Label, Options :: [Option]) -> wxRadioButton()
```

Types:

Parent = wxWindow:wxWindow()\
 Id = integer()\
 Label = unicode:chardata()\
 Option = \
\
     {pos, {X :: integer(), Y :: integer()}} \|\
\
     {size, {W :: integer(), H :: integer()}} \|\
\
     {style, integer()} \|\
\
     {validator, wx:wx\_object()}\

Constructor, creating and showing a radio button.

See: *create/5*, *wxValidator* (not implemented in wx)

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

Destructor, destroying the radio button item.

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

Types:

This = wxRadioButton()\
 Parent = wxWindow:wxWindow()\
 Id = integer()\
 Label = unicode:chardata()\

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

Types:

This = wxRadioButton()\
 Parent = wxWindow:wxWindow()\
 Id = integer()\
 Label = unicode:chardata()\
 Option = \
\
     {pos, {X :: integer(), Y :: integer()}} \|\
\
     {size, {W :: integer(), H :: integer()}} \|\
\
     {style, integer()} \|\
\
     {validator, wx:wx\_object()}\

Creates the choice for two-step construction.

See *new/4* for further details.

```
getValue(This) -> boolean()
```

Types:

This = wxRadioButton()\

Returns true if the radio button is checked, false otherwise.

```
setValue(This, Value) -> ok
```

Types:

This = wxRadioButton()\
 Value = boolean()\

Sets the radio button to checked or unchecked status.

This does not cause a *wxEVT\_RADIOBUTTON* event to get emitted.

If the radio button belongs to a radio group exactly one button in the group may be checked and so this method can be only called with *value* set to true. To uncheck a radio button in a group you must check another button in the same group.

Note: Under MSW, the focused radio button is always selected, i.e. its value is true. And, conversely, calling *SetValue(true)* will also set focus to the radio button if the focus had previously been on another radio button in the same group - as otherwise setting it on wouldn't work.
