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

A rich label is a label that supports rich text. This control is built on top of the rich text box control and as such require the rich-textbox feature. Enable “MULTI_LINE” to support multi line labels.

Unlike the basic Label, this version supports:

  • Colored text
  • Multiple fonts
  • Styled text such as bold, underscore, strikeout, etc
  • Bullet point list
  • Paragraph with custom indent/offset
  • Custom line spacing

Builder parameters:

  • parent: Required. The label parent container.
  • text: The label text.
  • size: The label size.
  • position: The label position.
  • enabled: If the label is enabled. A disabled label won’t trigger events
  • flags: A combination of the LabelFlags 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 label text
  • background_color: The background color of the label
  • h_align: The horizontal aligment of the label.
  • line_height: The line height in pixels for the vertical aligment. Can be None to disable vertical aligment. Real line height cannot be guessed by NWG due to the text formatting

Control events:

  • MousePress(_): Generic mouse press events on the label
  • OnMouseMove: Generic mouse mouse event
  • OnMouseWheel: Generic mouse wheel event

** Example **

use native_windows_gui as nwg;
fn build_label(label: &mut nwg::RichLabel, window: &nwg::Window, font: &nwg::Font) {
    nwg::RichLabel::builder()
        .text("Hello")
        .font(Some(font))
        .parent(window)
        .build(label);
}

Fields

handle: ControlHandle

Implementations

Sets the background color for a rich edit control. You cannot get the background color of a rich label

Sets the character format of the selected range of text

Returns the character format of the selected range of text

Sets the paragraph formatting for the selected range of text in a rich edit control

Returns the paragraph formatting for the selected range of text in a rich edit control If more than one paragraph is selected, receive the attributes of the first paragraph

Return the selected range of characters by the user in the text input

Return the selected range of characters by the user in the text input

Return the length of the user input in the control. This is better than control.text().len() as it does not allocate a string in memory

Remove all text from the textbox

Sets the line height for the vertical alignment

Returns the line height for the vertical alignment

Set base font of the control It is not possible to get the base font handle of a rich label. Use char_format instead.

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 button in the parent window

Set the size of the button in the parent window

Return the position of the button in the parent window

Set the position of the button in the parent window

Return the text displayed in the TextInput

Set the text displayed in the TextInput

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.