xtd - Reference Guide 0.2.0
xtd::forms::progress_bar Class Reference

#include <progress_bar.h>

## Definition

Represents a Windows progress bar control.

Namespace
xtd::forms
Library
xtd.forms
Remarks
A ProgressBar control visually indicates the progress of a lengthy operation in one of three styles:
• Segmented blocks that increase in steps from left to right.
• A continuous bar that fills in from left to right.
• A block that scrolls across a ProgressBar in a marquee fashion.
The style property determines the style of progress_bar that is displayed. Note that the progress_bar control can oriented horizontally or vertically. The progress_bar control is typically used when an application performs tasks such as copying files or printing documents. Users of an application might consider an application unresponsive if there is no visual cue. By using the progress_bar in your application, you alert the user that the application is performing a lengthy task and that the application is still responding.
The maximum and minimum properties define the range of values to represent the progress of a task. The minimum property is typically set to a value of 0, and the maximum property is typically set to a value indicating the completion of a task. For example, to properly display the progress when copying a group of files, the maximum property could be set to the total number of files to be copied.
The value property represents the progress that the application has made toward completing the operation. The value displayed by the progress_bar only approximates the current value of the value property. Based on the size of the progress_bar, the value property determines when to display the next block or increase the size of the bar.
There are a number of ways to modify the value displayed by the progress_bar other than changing the value property directly. You can use the step property to specify a specific value to increment the Value property by, and then call the perform_step method to increment the value. To vary the increment value, you can use the increment method and specify a value with which to increment the value property.
Note
fore_color and back_color changes for the progress_bar will not be honored.
Examples
The following code example demonstrates the use of progress_bar control.
#include <xtd/xtd>
using namespace std::literals;
using namespace xtd::forms;
namespace examples {
class form1 : public form {
public:
form1() {
text("Progress bar example");
client_size({300, 300});
progress_bar1.parent(*this);
progress_bar1.location({50, 50});
progress_bar1.width(200);
progress_bar2.parent(*this);
progress_bar2.location({50, 80});
progress_bar2.value(50);
progress_bar2.width(200);
progress_bar3.parent(*this);
progress_bar3.location({50, 110});
progress_bar3.maximum(300);
progress_bar3.increment(300);
progress_bar3.width(200);
progress_bar4.parent(*this);
progress_bar4.location({50, 140});
progress_bar4.step(1);
progress_bar4.width(200);
progress_bar5.parent(*this);
progress_bar5.location({50, 170});
progress_bar5.maximum(200);
progress_bar5.minimum(100);
progress_bar5.style(progress_bar_style::marquee);
progress_bar5.width(200);
timer1.interval(50ms);
timer1.tick += [&] {
progress_bar4.value(progress_bar4.value() < progress_bar4.maximum() ? progress_bar4.value() + 1 : progress_bar4.minimum());
};
timer1.enabled(true);
}
private:
timer timer1;
progress_bar progress_bar1;
progress_bar progress_bar2;
progress_bar progress_bar3;
progress_bar progress_bar4;
progress_bar progress_bar5;
};
}
int main() {
application::run(examples::form1 {});
}
Examples:
progress_bar.cpp, and track_bar.cpp.

## Constructors

progress_bar ()
Initializes a new instance of the progress_bar class. More...

## Properties

virtual size_t marquee_animation_speed ()
Gets he time period, in milliseconds, that it takes the progress block to scroll across the progress bar. More...

virtual progress_barmarquee_animation_speed (size_t marquee_animation_speed)
Sets the time period, in milliseconds, that it takes the progress block to scroll across the progress bar. More...

virtual int32_t maximum ()
Gets the maximum value of the range of the control. More...

virtual progress_barmaximum (int32_t maximum)
Sets the maximum value of the range of the control. More...

virtual int32_t minimum ()
Gets the minimum value of the range of the control. More...

virtual progress_barminimum (int32_t minimum)
Sets the minimum value of the range of the control. More...

virtual forms::orientation orientation () const
Gets a value indicating the horizontal or vertical orientation of the progress bar. More...

virtual progress_barorientation (forms::orientation orientation)
Sets a value indicating the horizontal or vertical orientation of the progress bar. More...

virtual int32_t step ()
Gets the amount by which a call to the PerformStep() method increases the current position of the progress bar. More...

virtual progress_barstep (int32_t step)
Sets the amount by which a call to the PerformStep() method increases the current position of the progress bar. More...

virtual progress_bar_style style () const
Gets the manner in which progress should be indicated on the progress bar. More...

virtual progress_barstyle (progress_bar_style style)
Sets the manner in which progress should be indicated on the progress bar. More...

virtual int32_t value ()
Gets the current position of the progress bar. More...

virtual progress_barvalue (int32_t value)
Sets the current position of the progress bar. More...

## Methods

void increment (int32_t value)
Advances the current position of the progress bar by the specified amount. More...

void perform_step ()
Advances the current position of the progress bar by the amount of the Step property. More...

void set_range (int min_value, int max_value)
Sets the minimum and maximum values for a xtd::forms::progress_bar. More...

xtd::ustring to_string () const noexcept override
Returns a string that represents the progress_bar control. More...

## Protected methods

forms::create_params create_params () const override
Gets the required creation parameters when the control handle is created. More...

drawing::size default_size () const override
Gets the default size of the control. More...

void on_handle_created (const event_args &e) override
Overrides control::on_handle_created(const event_args&) More...

Public Attributes inherited from xtd::forms::control
event< control, event_handlerauto_size_changed
Occurs when the value of the xtd::forms::control::auto_size property changes. More...

event< control, event_handlerback_color_changed
Occurs when the value of the xtd::forms::control::back_color property changes. More...

event< control, event_handlerbackground_image_changed
Occurs when the value of the xtd::forms::control::background_image property changes. More...

event< control, event_handlerbackground_image_layout_changed
Occurs when the value of the xtd::forms::control::background_image_layout property changes. More...

event< control, event_handlercontrol_appearance_changed
Occurs when the value of the xtd::forms::control::control_appearance property changes. More...

event< control, event_handlerclick
Occurs when the xtd::forms::control is clicked. More...

event< control, event_handlerclient_size_changed
Occurs when the value of the xtd::forms::control::client_size property changes. More...

event< control, event_handlercursor_changed
Occurs when the value of the xtd::forms::control::cursor property changes. More...

Occurs when a new xtd::forms::control::control is added to the xtd::forms::control::control_collection. More...

event< control, control_event_handlercontrol_removed
Occurs when a new xtd::forms::control:: is removed to the xtd::forms::control::control_collection. More...

event< control, event_handlerdock_changed
Occurs when the value of the xtd::forms::control::dock property changes. More...

event< control, event_handlerdouble_click
Occurs when the xtd::forms::control is double-clicked. More...

event< control, event_handlergot_focus
Occurs when the xtd::forms::control receives focus. More...

event< control, event_handlerhandle_created
Occurs when a handle is created for the xtd::forms::control. More...

event< control, event_handlerhandle_destroyed
Occurs when the control's handle is in the process of being destroyed. More...

event< control, event_handlerenabled_changed
Occurs when the value of the xtd::forms::control::enabled property changes. More...

event< control, event_handlerfore_color_changed
Occurs when the value of the xtd::forms::control::fore_color property changes. More...

event< control, event_handlerfont_changed
Occurs when the value of the xtd::forms::control::font property changes. More...

event< control, help_event_handlerhelp_requested
Occurs when the user requests help for a xtd::forms::control. More...

event< control, key_event_handlerkey_down
Occurs when a key is pressed while the xtd::forms::control has focus. More...

event< control, key_press_event_handlerkey_press
Occurs when a character. space or backspace key is pressed while the xtd::forms::control has focus. More...

event< control, key_event_handlerkey_up
Occurs when a key is released while the xtd::forms::control has focus. More...

event< control, event_handlerlayout
Occurs when a xtd::forms::control should reposition its child controls. More...

event< control, event_handlerlocation_changed
Occurs when the value of the xtd::forms::control::location property changes. More...

event< control, event_handlerlost_focus
Occurs when the xtd::forms::control loses focus. More...

event< control, mouse_event_handlermouse_click
Occurs when the xtd::forms::control is clicked by the mouse. More...

event< control, mouse_event_handlermouse_double_click
Occurs when the xtd::forms::control is double clicked by the mouse. More...

event< control, mouse_event_handlermouse_down
Occurs when the mouse pointer is over the xtd::forms::control and a mouse button is pressed. More...

event< control, event_handlermouse_enter
Occurs when the mouse pointer enters the xtd::forms::control. More...

event< control, mouse_event_handlermouse_horizontal_wheel
Occurs when the mouse horizontal wheel moves while the xtd::forms::control has focus. More...

event< control, event_handlermouse_leave
Occurs when the mouse pointer leaves the xtd::forms::control. More...

event< control, mouse_event_handlermouse_move
Occurs when the mouse pointer is moved over the xtd::forms::control. More...

event< control, mouse_event_handlermouse_up
Occurs when the mouse pointer is over the xtd::forms::control and a mouse button is released. More...

event< control, mouse_event_handlermouse_wheel
Occurs when the mouse wheel moves while the xtd::forms::control has focus. More...

event< control, paint_event_handlerpaint
Occurs when the xtd::forms::control is redrawn. More...

event< control, event_handlerparent_changed
Occurs when the value of the xtd::forms::control::parent property changes. More...

event< control, event_handlerregion_changed
Occurs when the value of the xtd::forms::control::region property changes. More...

event< control, event_handlerresize
Occurs when the xtd::forms::control is resized. More...

event< control, event_handlersize_changed
Occurs when the value of the xtd::forms::control::size property changes. More...

event< control, event_handlertab_stop_changed
Occurs when the xtd::forms::control::tab_stop property value changes. More...

event< control, event_handlertext_changed
Occurs when the value of the xtd::forms::control::text property changes. More...

event< control, event_handlervisible_changed
Occurs when the value of the xtd::forms::control::visible property changes. More...

Public Member Functions inherited from xtd::forms::control
control ()
Initializes a new instance of the xtd::forms::control class with default settings. More...

control (const xtd::ustring &text)
Initializes a new instance of the xtd::forms::control class with specific text. More...

control (const control &parent, const xtd::ustring &text)
Initializes a new instance of the xtd::forms::control class as a child control, with specific text. More...

control (const xtd::ustring &text, int32_t left, int32_t top, int32_t width, int32_t height)
Initializes a new instance of the control class with specific text, size, and location. More...

control (const control &parent, const xtd::ustring &text, int32_t left, int32_t top, int32_t width, int32_t height)
Initializes a new instance of the xtd::forms::control class as a child control, with specific text, size, and location. More...

virtual anchor_styles anchor () const
Gets the edges of the container to which a control is bound and determines how a control is resized with its parent. More...

virtual controlanchor (anchor_styles anchor)
Gets the edges of the container to which a control is bound and determines how a control is resized with its parent. More...

virtual drawing::point auto_scroll_point () const
Gets where this control is scrolled to in scroll_control_into_view(control). More...

virtual bool auto_size () const
Gets a value that indicates whether the control resizes based on its contents. More...

virtual controlauto_size (bool auto_size)
Sets a value that indicates whether the control resizes based on its contents. More...

virtual drawing::color back_color () const
Gets the background color for the control. More...

virtual controlback_color (const drawing::color &color)
Sets the background color for the control. More...

virtual const xtd::drawing::imagebackground_image () const
Gets the background image displayed in the control. More...

virtual controlbackground_image (const xtd::drawing::image &background_image)
Sets the background image displayed in the control. More...

virtual xtd::forms::image_layout background_image_layout () const
Gets the background image layout as defined in the xtd::forms::image_layout enumeration. More...

virtual controlbackground_image_layout (xtd::forms::image_layout background_image_layout)
Sets the background image layout as defined in the xtd::forms::image_layout enumeration. More...

virtual int32_t bottom () const
Gets the distance, in pixels, between the bottom edge of the control and the top edge of its container's client area. More...

virtual drawing::rectangle bounds () const
Gets the size and location of the control including its nonclient elements, in pixels, relative to the parent control. More...

virtual controlbounds (const drawing::rectangle &bounds)
Sets the size and location of the control including its nonclient elements, in pixels, relative to the parent control. More...

virtual bool can_focus () const
Gets a value indicating whether the control can receive focus. More...

virtual bool can_select () const
Gets a value indicating whether the control can be selected. More...

bool can_raise_events () const override
Determines if events can be raised on the control. More...

virtual const drawing::rectangleclient_rectangle () const
Gets the rectangle that represents the client area of the control. More...

virtual const drawing::sizeclient_size () const
Gets the height and width of the client area of the control. More...

virtual controlclient_size (const drawing::size &client_size)
Sets the height and width of the client area of the control. More...

virtual xtd::ustring company_name () const
Gets the name of the company or creator of the application containing the control. More...

Gets the xtd::forms::context_menu that is displayed in the control. More...

Sets the xtd::forms::context_menu that is displayed in the control. More...

Sets the xtd::forms::context_menu that is displayed in the control. More...

virtual forms::control_appearance control_appearance () const
Gets control appearance. More...

virtual controlcontrol_appearance (forms::control_appearance value)
Sets control appearance. More...

virtual control_collectioncontrols ()
Gets the collection of controls contained within the control. More...

virtual const control_collectioncontrols () const
Gets the collection of controls contained within the control. More...

virtual bool created ()
Gets a value indicating whether the control has been created. More...

virtual forms::cursor cursor () const
Gets the cursor that is displayed when the mouse pointer is over the control. More...

virtual controlcursor (const forms::cursor &cursor)
Sets the cursor that is displayed when the mouse pointer is over the control. More...

virtual drawing::color default_back_color () const
Gets the default background color of the control. More...

virtual forms::cursor default_cursor () const
Gets the default cursor for the control. More...

virtual drawing::font default_font () const
Gets the default font of the control. More...

virtual drawing::color default_fore_color () const
Gets the default foreground color of the control. More...

virtual drawing::rectangle display_rectangle () const
Gets the rectangle that represents the display area of the control. More...

virtual dock_style dock () const
Gets which control borders are docked to its parent control and determines how a control is resized with its parent. More...

virtual controldock (dock_style dock)
Sets which control borders are docked to its parent control and determines how a control is resized with its parent. More...

virtual bool double_buffered () const
Gets a value indicating whether this control should redraw its surface using a secondary buffer to reduce or prevent flicker. More...

virtual controldouble_buffered (bool double_buffered)
Sets a value indicating whether this control should redraw its surface using a secondary buffer to reduce or prevent flicker. More...

virtual bool enabled () const
Gets a value indicating whether the control can respond to user interaction. More...

virtual controlenabled (bool enabled)
Sets a value indicating whether the control can respond to user interaction. More...

virtual bool focused () const
Gets a value indicating whether the control has input focus. More...

virtual drawing::font font () const
Gets the font of the text displayed by the control. More...

virtual controlfont (const drawing::font &font)
Sets the font of the text displayed by the control. More...

virtual drawing::color fore_color () const
Gets the foreground color of the control. More...

virtual controlfore_color (const drawing::color &color)
Sets the foreground color of the control. More...

intptr_t handle () const override
Gets the window handle that the control is bound to. More...

virtual int32_t height () const
Gets the height of the control. More...

virtual controlheight (int32_t height)
Sets the height of the control. More...

bool invoke_required () const
Gets a value indicating whether the caller must call an invoke method when making method calls to the control because the caller is on a different thread than the one the control was created on. More...

bool is_handle_created () const
Gets a value indicating whether the control has a handle associated with it. More...

virtual int32_t left () const
Gets the distance, in pixels, between the left edge of the control and the left edge of its container's client area. More...

virtual controlleft (int32_t left)
Sets the distance, in pixels, between the left edge of the control and the left edge of its container's client area. More...

virtual drawing::point location () const
Gets the coordinates of the upper-left corner of the control relative to the upper-left corner of its container. More...

virtual controllocation (const drawing::point &location)
Sets the coordinates of the upper-left corner of the control relative to the upper-left corner of its container. More...

Gets the space between controls. More...

Sets the space between controls. More...

virtual const drawing::sizemaximum_client_size () const
Gets the client size that is the upper limit that xtd::forms::control::get_preferred_size can specify. More...

virtual controlmaximum_client_size (const drawing::size &size)
Sets the client size that is the upper limit that xtd::forms::control::get_preferred_size can specify. More...

virtual const drawing::sizemaximum_size () const
Gets the size that is the upper limit that xtd::forms::control::get_preferred_size can specify. More...

virtual controlmaximum_size (const drawing::size &size)
Sets the size that is the upper limit that xtd::forms::control::get_preferred_size can specify. More...

virtual const drawing::sizeminimum_client_size () const
Gets the client size that is the lower limit that xtd::forms::control::get_preferred_size can specify. More...

virtual controlminimum_client_size (const drawing::size &size)
Sets the client size that is the lower limit that xtd::forms::control::get_preferred_size can specify. More...

virtual const drawing::sizeminimum_size () const
Gets the size that is the lower limit that xtd::forms::control::get_preferred_size can specify. More...

virtual controlminimum_size (const drawing::size &size)
Sets the size that is the lower limit that xtd::forms::control::get_preferred_size can specify. More...

intptr_t native_handle () const
Gets the native handle that the control is bound to. More...

virtual const xtd::ustringname () const
Gets the name of the control. More...

virtual controlname (const xtd::ustring &name)
Sets the name of the control. More...

Gets padding within the control. More...

Sets padding within the control. More...

virtual std::optional< control_refparent () const
Gets the parent container of the control. More...

virtual controlparent (const control &parent)
Sets the parent container of the control. More...

virtual controlparent (std::nullptr_t)
Resets the parent container of the control. More...

virtual xtd::ustring product_name () const
Gets the product name of the assembly containing the control. More...

bool recreating_handle () const
Gets a value indicating whether the control is currently re-creating its handle. More...

virtual const xtd::drawing::regionregion () const
Gets the window region associated with the control. More...

virtual controlregion (const xtd::drawing::region &value)
Sets the window region associated with the control. More...

virtual int32_t right () const
Gets the distance, in pixels, between the right edge of the control and the left edge of its container's client area. More...

virtual drawing::size size () const
Gets the height and width of the control. More...

virtual controlsize (const drawing::size &size)
Sets the height and width of the control. More...

virtual style_sheets::style_sheet style_sheet () const
Gets the contol style sheet. More...

virtual controlstyle_sheet (const style_sheets::style_sheet &value)
Sets the contol style sheet. More...

virtual controlstyle_sheet (const xtd::ustring &value)
Sets the contol style sheet. More...

virtual bool tab_stop () const
Gets a value indicating whether the user can give the focus to this control using the TAB key. More...

virtual controltab_stop (bool value)
Sets a value indicating whether the user can give the focus to this control using the TAB key. More...

virtual std::any tag () const
Gets the object that contains data about the control. More...

virtual controltag (std::any tag)
Sets the object that contains data about the control. More...

virtual const xtd::ustringtext () const
Gets the text associated with this control. More...

virtual controltext (const xtd::ustring &text)
Sets the text associated with this control. More...

intptr_t toolkit_handle () const
Gets the toolkit handle that the control is bound to. More...

virtual int32_t top () const
Gets the distance, in pixels, between the top edge of the control and the top edge of its container's client area. More...

virtual controltop (int32_t top)
Sets the distance, in pixels, between the top edge of the control and the top edge of its container's client area. More...

virtual std::optional< control_reftop_level_control () const
Gets the parent control that is not parented by another Windows Forms control. Typically, this is the outermost Form that the control is contained in. More...

virtual bool visible () const
Gets a value indicating whether the control and all its child controls are displayed. More...

virtual controlvisible (bool visible)
Sets a value indicating whether the control and all its child controls are displayed. More...

virtual int32_t width () const
Gets the width of the control. More...

virtual controlwidth (int32_t width)
Sets the width of the control. More...

std::shared_ptr< xtd::iasync_resultbegin_invoke (delegate< void()> value)
Executes the specified delegate asynchronously on the thread that the control's underlying handle was created on. More...

std::shared_ptr< xtd::iasync_resultbegin_invoke (delegate< void(std::vector< std::any >)> value, const std::vector< std::any > &args)
Executes the specified delegate asynchronously with the specified arguments, on the thread that the control's underlying handle was created on. More...

virtual void bring_to_front ()
Brings the control to the front of the z-order. More...

void create_control ()
Forces the creation of the visible control, including the creation of the handle and any visible child controls. More...

drawing::graphics create_graphics () const
Creates the xtd::drawing::graphics for the control. More...

virtual void destroy_control ()
Forces the destruction of the visible control, including the destruction of the handle and any visible child controls. More...

void end_invoke (std::shared_ptr< xtd::iasync_result > async)
Retrieves the return value of the asynchronous operation represented by the async_result_invoke passed. More...

bool focus ()
Sets input focus to the control. More...

auto_size_mode get_auto_size_mode () const
Gets a value indicating how a control will behave when its auto_size property is enabled. More...

size_t get_child_index (intptr_t child) const
Retrieves the index of a control within the control collection. More...

size_t get_child_index (intptr_t child, bool &throw_exception) const
Retrieves the index of the specified child control within the control collection, and optionally raises an exception if the specified control is not within the control collection. More...

virtual void hide ()
Conceals the control from the user. More...

virtual void invalidate () const
Invalidates the entire surface of the control and causes the control to be redrawn. More...

virtual void invalidate (bool invalidate_children) const
Invalidates a specific region of the control and causes a paint message to be sent to the control. Optionally, invalidates the child controls assigned to the control. More...

virtual void invalidate (const drawing::rectangle &rect) const
Invalidates the specified region of the control (adds it to the control's update region, which is the area that will be repainted at the next paint operation), and causes a paint message to be sent to the control. More...

virtual void invalidate (const drawing::rectangle &rect, bool invalidate_children) const
Invalidates the specified region of the control (adds it to the control's update region, which is the area that will be repainted at the next paint operation), and causes a paint message to be sent to the control. Optionally, invalidates the child controls assigned to the control. More...

void invoke (delegate< void()> value)
Executes the specified delegate on the thread that owns the control's underlying window handle. More...

void invoke (delegate< void(std::vector< std::any >)> value, const std::vector< std::any > &args)
Executes the specified delegate, on the thread that owns the control's underlying window handle, with the specified list of arguments. More...

void invoke (delegate< void(std::vector< std::any >)> value, std::any arg)
Executes the specified delegate, on the thread that owns the control's underlying window handle, with the specified list of arguments. More...

void perform_layout ()
Forces the control to apply layout logic to all its child controls. More...

xtd::drawing::point point_to_client (const xtd::drawing::point &p) const
Computes the location of the specified screen point into client coordinates. More...

xtd::drawing::point point_to_screen (const xtd::drawing::point &p) const
Computes the location of the specified client point into screen coordinates. More...

virtual bool pre_process_message (xtd::forms::message &message)
Preprocesses keyboard or input messages within the message loop before they are dispatched. More...

virtual void refresh () const
Forces the control to invalidate its client area and immediately redraw itself and any child controls. More...

void resume_layout ()
Resumes usual layout logic. More...

void resume_layout (bool perform_layout)
Resumes usual layout logic, optionally forcing an immediate layout of pending layout requests. More...

intptr_t send_message (intptr_t hwnd, int32_t msg, intptr_t wparam, intptr_t lparam) const
Send a message with specified hwnd, message, wparam and lparam. More...

void set_auto_size_mode (auto_size_mode auto_size_mode)
Sets a value indicating how a control will behave when its auto_size property is enabled. More...

void set_bounds (int32_t x, int32_t y, int32_t width, int32_t height)
Sets the bounds of the control to the specified location and size. More...

void set_bounds (int32_t x, int32_t y, int32_t width, int32_t height, bounds_specified specified)
Sets the specified bounds of the control to the specified location and size. More...

virtual void show ()
Displays the control to the user. More...

void suspend_layout ()
Temporarily suspends the layout logic for the control. More...

virtual void update () const
Causes the control to redraw the invalidated regions within its client area. More...

controloperator<< (control &child)

controloperator>> (control &child)
Remove child control. More...

Public Member Functions inherited from xtd::object
object ()=default
Create a new instance of the ultimate base class object. More...

virtual bool equals (const object &obj) const noexcept
Determines whether the specified object is equal to the current object. More...

virtual size_t get_hash_code () const noexcept
Serves as a hash function for a particular type. More...

template<typename object_t >
std::unique_ptr< object_t > memberwise_clone () const
Gets the type of the current instance. More...

Public Member Functions inherited from xtd::forms::iwin32_window
Static Public Member Functions inherited from xtd::forms::control
Gets a value indicating whether to catch calls on the wrong thread that access a xtd::forms::contrtol::handle property when an application is being debugged. More...

Sets a value indicating whether to catch calls on the wrong thread that access a xtd::forms::contrtol::handle property when an application is being debugged. More...

static forms::keys modifier_keys ()
Gets a value indicating which of the modifier keys (SHIFT, CTRL, and ALT) is in a pressed state. More...

static forms::mouse_buttons mouse_buttons ()
Gets a value indicating which of the mouse buttons is in a pressed state. More...

static xtd::drawing::point mouse_position ()
Gets the position of the mouse cursor in screen coordinates. More...

template<typename control_t >
static std::unique_ptr< control_t > create (const drawing::point &location={-1, -1}, const drawing::size &size={-1, -1}, const drawing::color &back_color=drawing::color::empty, const drawing::color &fore_color=drawing::color::empty)
A factory to create a specified control with specified location ,size back_color and fore_color. More...

template<typename control_t >
static std::unique_ptr< control_t > create (const control &parent, const drawing::point &location={-1, -1}, const drawing::size &size={-1, -1}, const drawing::color &back_color=drawing::color::empty, const drawing::color &fore_color=drawing::color::empty)
A factory to create a specified control with specified parent, location ,size back_color and fore_color. More...

template<typename control_t >
static std::unique_ptr< control_t > create (const xtd::ustring &text, const drawing::point &location={-1, -1}, const drawing::size &size={-1, -1}, const drawing::color &back_color=drawing::color::empty, const drawing::color &fore_color=drawing::color::empty)
A factory to create a specified control with specified text, location ,size back_color and fore_color. More...

template<typename control_t >
static std::unique_ptr< control_t > create (const control &parent, const xtd::ustring &text, const drawing::point &location={-1, -1}, const drawing::size &size={-1, -1}, const drawing::color &back_color=drawing::color::empty, const drawing::color &fore_color=drawing::color::empty)
A factory to create a specified control with specified parent, text, location ,size back_color and fore_color. More...

static std::optional< control_reffrom_child_handle (intptr_t handle)
Retrieves the control that contains the specified handle. More...

static std::optional< control_reffrom_handle (intptr_t handle)
Returns the control that is currently associated with the specified handle. More...

Static Public Member Functions inherited from xtd::object
static bool equals (const object &object_a, const object &object_b) noexcept
Determines whether the specified object instances are considered equal. More...

static bool reference_equals (const object &object_a, const object &object_b) noexcept
Determines whether the specified object instances are the same instance. More...

Protected Member Functions inherited from xtd::forms::control
xtd::forms::visual_styles::control_state control_state () const noexcept
Gets state. More...

virtual void create_handle ()
Creates a handle for the control. More...

virtual void destroy_handle ()
Destroys the handle associated with the control. More...

virtual void def_wnd_proc (message &message)
Sends the specified message to the default window procedure. More...

bool get_style (control_styles flag) const
Retrieves the value of the specified control style bit for the control. More...

virtual drawing::size measure_control () const
Measure this control. More...

drawing::size measure_text () const
Measure this control text. More...

virtual void on_auto_size_changed (const event_args &e)
Raises the xtd::forms::control::auto_size_changed event. More...

virtual void on_back_color_changed (const event_args &e)
Raises the xtd::forms::control::back_color_changed event. More...

virtual void on_background_image_changed (const event_args &e)
Raises the xtd::forms::control::background_image_changed event. More...

virtual void on_background_image_layout_changed (const event_args &e)
Raises the xtd::forms::control::background_image_layout_changed event. More...

virtual void on_control_appearance_changed (const event_args &e)
Raises the control::control_appearance_changed event. More...

virtual void on_click (const event_args &e)
Raises the xtd::forms::control::click event. More...

virtual void on_client_size_changed (const event_args &e)
Raises the xtd::forms::control::client_size_changed event. More...

virtual void on_control_added (const control_event_args &e)

virtual void on_control_removed (const control_event_args &e)
Raises the xtd::forms::control::control_removed event. More...

virtual void on_create_control ()
Raises the xtd::forms::control::create_control event. More...

virtual void on_cursor_changed (const event_args &e)
Raises the xtd::forms::control::cursor_changed event. More...

virtual void on_dock_changed (const event_args &e)
Raises the xtd::forms::control::dock_changed event. More...

virtual void on_double_click (const event_args &e)
Raises the xtd::forms::control::double_click event. More...

virtual void on_enabled_changed (const event_args &e)
Raises the xtd::forms::control::enabled_changed event. More...

virtual void on_fore_color_changed (const event_args &e)
Raises the xtd::forms::control::fore_color_changed event. More...

virtual void on_font_changed (const event_args &e)
Raises the xtd::forms::control::font_changed event. More...

virtual void on_got_focus (const event_args &e)
Raises the xtd::forms::control::got_focus event. More...

virtual void on_handle_destroyed (const event_args &e)
Raises the xtd::forms::control::handle_destroyed event. More...

virtual void on_help_requested (help_event_args &e)
Raises the xtd::forms::control::help_requested event. More...

virtual void on_key_down (key_event_args &e)
Raises the xtd::forms::control::key_down event. More...

virtual void on_key_press (key_press_event_args &e)
Raises the xtd::forms::control::key_press event. More...

virtual void on_key_up (key_event_args &e)
Raises the xtd::forms::control::key_up event. More...

virtual void on_layout (const event_args &e)
Raises the xtd::forms::control::layout event. More...

virtual void on_location_changed (const event_args &e)
Raises the xtd::forms::control::location_changed event. More...

virtual void on_lost_focus (const event_args &e)
Raises the xtd::forms::control::lost_focus event. More...

virtual void on_mouse_click (const mouse_event_args &e)
Raises the xtd::forms::control::mouse_click event. More...

virtual void on_mouse_double_click (const mouse_event_args &e)
Raises the xtd::forms::control::mouse_double_click event. More...

virtual void on_mouse_down (const mouse_event_args &e)
Raises the xtd::forms::control::mouse_down event. More...

virtual void on_mouse_enter (const event_args &e)
Raises the xtd::forms::control::mouse_enter event. More...

virtual void on_mouse_horizontal_wheel (const mouse_event_args &e)
Raises the xtd::forms::control::mouse_horizontal_wheel event. More...

virtual void on_mouse_leave (const event_args &e)
Raises the xtd::forms::control::mouse_leave event. More...

virtual void on_mouse_move (const mouse_event_args &e)
Raises the xtd::forms::control::mouse_move event. More...

virtual void on_mouse_up (const mouse_event_args &e)
Raises the xtd::forms::control::mouse_up event. More...

virtual void on_mouse_wheel (const mouse_event_args &e)
Raises the xtd::forms::control::mouse_wheel event. More...

virtual void on_paint (paint_event_args &e)
Raises the xtd::forms::control::paint event. More...

virtual void on_paint_background (paint_event_args &e)
Paints the background of the xtd::forms::control. More...

virtual void on_parent_back_color_changed (const event_args &e)
Raises the xtd::forms::control::parent_back_color_changed event. More...

virtual void on_parent_cursor_changed (const event_args &e)
Raises the xtd::forms::control::parent_cursor_changed event. More...

virtual void on_parent_changed (const event_args &e)
Raises the xtd::forms::control::parent_changed event. More...

virtual void on_parent_enabled_changed (const event_args &e)
Raises the xtd::control::enabled_changed event when the xtd::control::enabled property value of the control's container changes.. More...

virtual void on_parent_fore_color_changed (const event_args &e)
Raises the xtd::forms::control::parent_fore_color_changed event. More...

virtual void on_parent_font_changed (const event_args &e)
Raises the xtd::forms::control::parent_font_changed event. More...

virtual void on_resize (const event_args &e)
Raises the xtd::forms::control::region event. More...

virtual void on_region_changed (const event_args &e)
Raises the xtd::forms::control::region_changed event. More...

virtual void on_size_changed (const event_args &e)
Raises the xtd::forms::control::size_changed event. More...

virtual void on_tab_stop_changed (const event_args &e)
Raises the xtd::forms::control::tab_stop_changed event. More...

virtual void on_text_changed (const event_args &e)
Raises the xtd::forms::control::text_changed event. More...

virtual void on_visible_changed (const event_args &e)
Raises the xtd::forms::control::visible_changed event. More...

void post_recreate_handle ()

virtual void recreate_handle ()
Forces the re-creation of the handle for the control. More...

virtual void set_bounds_core (int32_t x, int32_t y, int32_t width, int32_t height, bounds_specified specified)
Performs the work of setting the specified bounds of this control. More...

void set_can_focus (bool value)
Sets a value indicating whether the control can receive focus. More...

virtual void set_text (const xtd::ustring &text)
Sets the text associated with this control. More...

virtual void set_client_size_core (int32_t width, int32_t height)
Sets the size of the client area of the control. More...

void set_parent (intptr_t handle)
Sets the parent handle of the control. More...

void set_style (control_styles flag, bool value)
Sets a specified control_styles flag to either true or false. More...

virtual void wnd_proc (message &m)
Processes Windows messages. More...

Protected Member Functions inherited from xtd::forms::component
component ()=default
Initialises a new instance of the component class. More...

bool design_mode () const
Gets a value that indicates whether the component is currently in design mode. More...

Static Protected Member Functions inherited from xtd::forms::control
static void set_mouse_buttons (forms::mouse_buttons value)
Sets a value indicating which of the mouse buttons is in a pressed state. More...

## ◆ progress_bar()

 xtd::forms::progress_bar::progress_bar ( )

Initializes a new instance of the progress_bar class.

Remarks
By default, the minimum property is set to 0, the maximum property is set to 100, and the step property is set to 10.

## ◆ create_params()

 forms::create_params xtd::forms::progress_bar::create_params ( ) const
overrideprotectedvirtual

Gets the required creation parameters when the control handle is created.

Returns
A create_params that contains the required creation parameters when the handle to the control is created.

Reimplemented from xtd::forms::control.

## ◆ default_size()

 drawing::size xtd::forms::progress_bar::default_size ( ) const
overrideprotectedvirtual

Gets the default size of the control.

Returns
The default size of the control.

Reimplemented from xtd::forms::control.

## ◆ increment()

 void xtd::forms::progress_bar::increment ( int32_t value )
inline

Advances the current position of the progress bar by the specified amount.

Parameters
 value The amount by which to increment the progress bar's current position.
Remarks
The increment method enables you to increment the value of the progress bar by a specific amount. This method of incrementing the progress bar is similar to using the step property with the perform_step method. The value property specifies the current position of the progress_bar. If, after calling the increment method, the value property is greater than the value of the maximum property, the value property remains at the value of the maximum property. If, after calling the increment method with a negative value specified in the value parameter, the Value property is less than the value of the minimum property, the value property remains at the value of the minimum property.
Because a progress_bar object whose style is set to marquee displays a continuously scrolling bar instead of its value, calling increment is unnecessary and will do nothing.

## ◆ marquee_animation_speed() [1/2]

 virtual size_t xtd::forms::progress_bar::marquee_animation_speed ( )
inlinevirtual

Gets he time period, in milliseconds, that it takes the progress block to scroll across the progress bar.

Returns
The time period, in milliseconds, that it takes the progress block to scroll across the progress bar.
Remarks
A marquee-style progress indicator does not display progress; instead it indicates that an operation is occurring by moving the progress block across the progress bar.
Since the marquee animation speed is a time period, setting the value to a higher number results in a slower speed and a lower number results in a faster speed.

## ◆ marquee_animation_speed() [2/2]

 virtual progress_bar& xtd::forms::progress_bar::marquee_animation_speed ( size_t marquee_animation_speed )
virtual

Sets the time period, in milliseconds, that it takes the progress block to scroll across the progress bar.

Parameters
 marquee_animation_speed The time period, in milliseconds, that it takes the progress block to scroll across the progress bar.
Remarks
A marquee-style progress indicator does not display progress; instead it indicates that an operation is occurring by moving the progress block across the progress bar.
Since the marquee animation speed is a time period, setting the value to a higher number results in a slower speed and a lower number results in a faster speed.

## ◆ maximum() [1/2]

 virtual int32_t xtd::forms::progress_bar::maximum ( )
inlinevirtual

Gets the maximum value of the range of the control.

Returns
The maximum value of the range. The default is 100.
Remarks
This property specifies the upper limit of the value property. When the value of the maximum property is changed, the progress_bar control is redrawn to reflect the new range of the control. When the value of the value property is equal to the value of the maximum property, the progress bar is completely filled.
You can use this property to specify a value to which the value property must be set (by setting the value property or using the increment or perform_step methods) to indicate that an operation is complete. For example, you can set the value of the maximum property to the total number of files in a file copy operation. Each time a file is copied, the value property can be increased by 1 until the total number of files is copied. At that point, the progress bar would be completely filled.

## ◆ maximum() [2/2]

 virtual progress_bar& xtd::forms::progress_bar::maximum ( int32_t maximum )
virtual

Sets the maximum value of the range of the control.

Parameters
 maximum The maximum value of the range. The default is 100.
Remarks
This property specifies the upper limit of the value property. When the value of the maximum property is changed, the progress_bar control is redrawn to reflect the new range of the control. When the value of the value property is equal to the value of the maximum property, the progress bar is completely filled.
You can use this property to specify a value to which the value property must be set (by setting the value property or using the increment or perform_step methods) to indicate that an operation is complete. For example, you can set the value of the maximum property to the total number of files in a file copy operation. Each time a file is copied, the value property can be increased by 1 until the total number of files is copied. At that point, the progress bar would be completely filled.

## ◆ minimum() [1/2]

 virtual int32_t xtd::forms::progress_bar::minimum ( )
inlinevirtual

Gets the minimum value of the range of the control.

Returns
The minimum value of the range. The default is 0.
Remarks
This property specifies the lower limit of the value property. When the value of the minimum property is changed, the progress_bar control is redrawn to reflect the new range of the control. When the value of the value property is equal to the value of the minimum property, the progress bar is empty. To change the value of the progress bar, use the step property with the perform_step method, use the increment method, or set the value of the value property directly.

## ◆ minimum() [2/2]

 virtual progress_bar& xtd::forms::progress_bar::minimum ( int32_t minimum )
virtual

Sets the minimum value of the range of the control.

Parameters
 minimum The minimum value of the range. The default is 0.
Remarks
This property specifies the lower limit of the value property. When the value of the minimum property is changed, the progress_bar control is redrawn to reflect the new range of the control. When the value of the value property is equal to the value of the minimum property, the progress bar is empty. To change the value of the progress bar, use the step property with the perform_step method, use the increment method, or set the value of the value property directly.

## ◆ on_handle_created()

 void xtd::forms::progress_bar::on_handle_created ( const event_args & e )
overrideprotectedvirtual
Parameters
 e A EventArgs that contains the event data.

Reimplemented from xtd::forms::control.

## ◆ orientation() [1/2]

 virtual forms::orientation xtd::forms::progress_bar::orientation ( ) const
inlinevirtual

Gets a value indicating the horizontal or vertical orientation of the progress bar.

Returns
One of the orientation values.
Remarks
When the orientation property is set to orientation::horizontal, the progress moves from left to right as the value increases. When the orientation property is set to orientation::vertical, the progress moves from bottom to top as the value increases.

## ◆ orientation() [2/2]

 virtual progress_bar& xtd::forms::progress_bar::orientation ( forms::orientation orientation )
virtual

Sets a value indicating the horizontal or vertical orientation of the progress bar.

Parameters
 orientation One of the orientation values.
Remarks
When the orientation property is set to orientation::horizontal, the progress moves from left to right as the value increases. When the orientation property is set to orientation::vertical, the progress moves from bottom to top as the value increases.

## ◆ perform_step()

 void xtd::forms::progress_bar::perform_step ( )
inline

Advances the current position of the progress bar by the amount of the Step property.

Remarks
The perform_step method increments the value of the progress bar by the amount specified by the step property. You can use the Step property to specify the amount that each completed task in an operation changes the value of the progress bar. For example, if you are copying a group of files, you might want to set the value of the step property to 1 and the value of the maximum property to the total number of files to copy. When each file is copied, you can call the perform_step method to increment the progress bar by the value of the step property. If you want to have more flexible control of the value of the progress bar, you can use the increment method or set the value of the value property directly.

## ◆ set_range()

 void xtd::forms::progress_bar::set_range ( int min_value, int max_value )
inline

Sets the minimum and maximum values for a xtd::forms::progress_bar.

Parameters
 min_value The lower limit of the range of the progress bar. max_value The upper limit of the range of the progress bar.
Remarks
You can use this method to set the entire range for the xtd::forms::progress_bar at the same time. To set the minimum or maximum values individually, use the xtd::forms::progress_bar::minimum and xtd::forms::progress_bar::maximum properties. If the min_value parameter is greater than the max_value parameter, max_value is set equal to min_value.

## ◆ step() [1/2]

 virtual int32_t xtd::forms::progress_bar::step ( )
inlinevirtual

Gets the amount by which a call to the PerformStep() method increases the current position of the progress bar.

Returns
The amount by which to increment the progress bar with each call to the perform_step() method. The default is 10.
Remarks
You can use the step property to specify the amount that each completed task in an operation changes the value of the progress bar. For example, if you are copying a group of files, you might want to set the value of the step property to 1 and the value of the maximum property to the total number of files to copy. When each file is copied, you can call the perform_step method to increment the progress bar by the value of the step property. If you want to have more flexible control of the value of the progress bar, you can use the increment method or set the value of the value property directly.

## ◆ step() [2/2]

 virtual progress_bar& xtd::forms::progress_bar::step ( int32_t step )
virtual

Sets the amount by which a call to the PerformStep() method increases the current position of the progress bar.

Parameters
 step The amount by which to increment the progress bar with each call to the perform_step() method. The default is 10.
Remarks
You can use the step property to specify the amount that each completed task in an operation changes the value of the progress bar. For example, if you are copying a group of files, you might want to set the value of the step property to 1 and the value of the maximum property to the total number of files to copy. When each file is copied, you can call the perform_step method to increment the progress bar by the value of the step property. If you want to have more flexible control of the value of the progress bar, you can use the increment method or set the value of the value property directly.

## ◆ style() [1/2]

 virtual progress_bar_style xtd::forms::progress_bar::style ( ) const
inlinevirtual

Gets the manner in which progress should be indicated on the progress bar.

Returns
One of the progress_bar_style values. The default is blocks
Remarks
You can use the marquee style when you need to indicate progress is being made, without indicating the quantity of progress. The marquee style is honored only when visual styles are enabled. The continuous style is honored when visual styles are not enabled.

## ◆ style() [2/2]

 virtual progress_bar& xtd::forms::progress_bar::style ( progress_bar_style style )
virtual

Sets the manner in which progress should be indicated on the progress bar.

Parameters
 style One of the progress_bar_style values. The default is blocks
Remarks
You can use the marquee style when you need to indicate progress is being made, without indicating the quantity of progress. The marquee style is honored only when visual styles are enabled. The continuous style is honored when visual styles are not enabled.

## ◆ to_string()

 xtd::ustring xtd::forms::progress_bar::to_string ( ) const
inlineoverridevirtualnoexcept

Returns a string that represents the progress_bar control.

Returns
A string that represents the current progress_bar.
Remarks
The return string includes the type and the values for the minimum, maximum, and value properties.

Reimplemented from xtd::forms::control.

## ◆ value() [1/2]

 virtual int32_t xtd::forms::progress_bar::value ( )
inlinevirtual

Gets the current position of the progress bar.

Returns
The position within the range of the progress bar. The default is 0.
Remarks
If the value specified is greater than the value of the maximum property, the value property is set to maximum.
If the value specified is less than the value of the minimum property, the value property is set to minimum.
The minimum and maximum values of the value property are specified by the minimum and maximum properties. This property enables you to increment or decrement the value of the progress bar directly. To perform consistent increases in the value of the progress_bar control you can use the step property with the perform_step method. To increase the progress bar value by varying amounts, use the increment method.

## ◆ value() [2/2]

 virtual progress_bar& xtd::forms::progress_bar::value ( int32_t value )
virtual

Sets the current position of the progress bar.

Parameters
 value The position within the range of the progress bar. The default is 0.
Remarks
If the value specified is greater than the value of the maximum property, the value property is set to maximum.
If the value specified is less than the value of the minimum property, the value property is set to minimum.
The minimum and maximum values of the value property are specified by the minimum and maximum properties. This property enables you to increment or decrement the value of the progress bar directly. To perform consistent increases in the value of the progress_bar control you can use the step property with the perform_step method. To increase the progress bar value by varying amounts, use the increment method.

The documentation for this class was generated from the following file: