pub struct RadioButton {
    pub handle: ControlHandle,
    /* private fields */
}
Expand description

A radio button (also called option button) consists of a round button and an application-defined label, icon, or bitmap that indicates a choice the user can make by selecting the button. An application typically uses radio buttons in a group box to enable the user to choose one of a set of related but mutually exclusive options.

Radiobutton is not behind any features.

Note: Internally, radio buttons are Button and as such, they trigger the same events

Builder parameters:

  • parent: Required. The radio button parent container.
  • text: The radio button text.
  • size: The radio button size.
  • position: The radio button position.
  • enabled: If the radio button can be used by the user. It also has a grayed out look if disabled.
  • flags: A combination of the RadioButtonFlags values.
  • ex_flags: A combination of win32 window extended flags. Unlike flags, ex_flags must be used straight from winapi
  • font: The font used for the radio button text
  • background_color: The background color of the radio button. Defaults to the default window background (light gray)
  • check_state: The default check state

Control events:

  • OnButtonClick: When the adio button is clicked once by the user
  • OnButtonDoubleClick: When the adio button is clicked twice rapidly by the user
  • MousePress(_): Generic mouse press events on the adio button
  • OnMouseMove: Generic mouse mouse event
  • OnMouseWheel: Generic mouse wheel event
use native_windows_gui as nwg;

/// Build two group of checkboxes on the same parent with the GROUP flags
fn build_radio_groups(radios: &mut [nwg::RadioButton], parent: &nwg::Window) {
    use nwg::RadioButtonFlags as RadioF;

    // Group 1
    nwg::RadioButton::builder()
      .flags(RadioF::VISIBLE | RadioF::GROUP)
      .parent(parent)
      .build(&mut radios[0]);

    nwg::RadioButton::builder()
      .parent(parent)
      .build(&mut radios[1]);

    // Group 2
    nwg::RadioButton::builder()
      .flags(RadioF::VISIBLE | RadioF::GROUP)
      .parent(parent)
      .build(&mut radios[2]);

    nwg::RadioButton::builder()
      .parent(parent)
      .build(&mut radios[3]);
}

use native_windows_gui as nwg;
fn build_radio(radio: &mut nwg::RadioButton, window: &nwg::Window, font: &nwg::Font) {
    nwg::RadioButton::builder()
        .text("Hello")
        .flags(nwg::RadioButtonFlags::VISIBLE)
        .font(Some(font))
        .parent(window)
        .build(radio);
}

Fields

handle: ControlHandle

Implementations

Return the check state of the check box

Sets the check state of the check box

Return the font of the control

Set the font of the control

Return true if the control currently has the keyboard focus

Set the keyboard focus on the button.

Return true if the control user can interact with the control, return false otherwise

Enable or disable the control

Return true if the control is visible to the user. Will return true even if the control is outside of the parent client view (ex: at the position (10000, 10000))

Show or hide the control to the user

Return the size of the radio button in the parent window

Set the size of the radio button in the parent window

Return the position of the radio button in the parent window

Set the position of the radio button in the parent window

Return the radio button label

Set the radio button label

Winapi class name used during control creation

Winapi base flags used during window creation

Winapi flags required by the control

Trait Implementations

Returns the “default value” for a type. Read more

Executes the destructor for this type. Read more

Converts to this type from the input type.

Converts to this type from the input type.

This method tests for self and other values to be equal, and is used by ==. Read more

This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason. Read more

This method tests for self and other values to be equal, and is used by ==. Read more

This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason. Read more

This method tests for self and other values to be equal, and is used by ==. Read more

This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason. Read more

Auto Trait Implementations

Blanket Implementations

Gets the TypeId of self. Read more

Immutably borrows from an owned value. Read more

Mutably borrows from an owned value. Read more

Returns the argument unchanged.

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

The type returned in the event of a conversion error.

Performs the conversion.

The type returned in the event of a conversion error.

Performs the conversion.