Struct winsafe::gui::ComboBoxOpts
source · pub struct ComboBoxOpts {
pub position: (i32, i32),
pub width: u32,
pub combo_box_style: CBS,
pub window_style: WS,
pub window_ex_style: WS_EX,
pub ctrl_id: u16,
pub resize_behavior: (Horz, Vert),
pub items: Vec<String>,
pub selected_item: Option<u32>,
}
gui
only.Expand description
Options to create a ComboBox
programmatically with
ComboBox::new
.
Fields§
§position: (i32, i32)
Left and top position coordinates of control within parent’s client area, to be created.
If the parent window is a dialog, the values are in Dialog Template Units; otherwise in pixels, which will be multiplied to match current system DPI.
Defaults to (0, 0)
.
width: u32
Control width to be created.
If the parent window is a dialog, the value is in Dialog Template Units; otherwise in pixels, which will be multiplied to match current system DPI.
Defaults to 120
.
combo_box_style: CBS
Combo box styles to be created.
Defaults to CBS::DROPDOWNLIST
.
Suggestions:
- replace with
CBS::DROPDOWN
to allow the user to type a text; - add
CBS::SORT
to automatically sort the items.
window_style: WS
Window styles to be created.
Defaults to WS::CHILD | WS::VISIBLE | WS::TABSTOP | WS::GROUP
.
window_ex_style: WS_EX
Extended window styles to be created.
Defaults to WS_EX::LEFT
.
ctrl_id: u16
The control ID.
Defaults to an auto-generated ID.
resize_behavior: (Horz, Vert)
Horizontal and vertical behavior of the control when the parent window is resized.
Note: A ComboBox
cannot be resized vertically, so it will panic if
you use Vert::Resize
.
Defaults to (gui::Horz::None, gui::Vert::None)
.
items: Vec<String>
Items to be added right away to the control.
Defaults to none.
selected_item: Option<u32>
Index of the item initially selected. The item must exist.
Defaults to None
.