This page has been translated automatically.
视频教程
界面
要领
高级
实用建议
基础
专业(SIM)
UnigineEditor
界面概述
资源工作流程
Version Control
设置和首选项
项目开发
调整节点参数
Setting Up Materials
设置属性
照明
Sandworm
使用编辑器工具执行特定任务
如何擴展編輯器功能
嵌入式节点类型
Nodes
Objects
Effects
Decals
光源
Geodetics
World Nodes
Sound Objects
Pathfinding Objects
Players
编程
基本原理
搭建开发环境
使用范例
C++
C#
UnigineScript
统一的Unigine着色器语言 UUSL (Unified UNIGINE Shader Language)
Plugins
File Formats
材质和着色器
Rebuilding the Engine Tools
GUI
双精度坐标
应用程序接口
Animations-Related Classes
Containers
Common Functionality
Controls-Related Classes
Engine-Related Classes
Filesystem Functionality
Math Functionality
Node-Related Classes
Objects-Related Classes
Networking Functionality
Pathfinding-Related Classes
Physics-Related Classes
Plugins-Related Classes
IG Plugin
CIGIConnector Plugin
Rendering-Related Classes
VR-Related Classes
创建内容
内容优化
材质
Material Nodes Library
Miscellaneous
Input
Math
Matrix
Textures
Art Samples
Tutorials

Unigine::WidgetButton Class

Header: #include <UnigineWidgets.h>
Inherits from: Widget

Interface for widget button handling.

The object of this class looks as follows:

Here is an example of two buttons. Button1 has a background and image, Button2 is without them:

Notice
The button is automatically stretched or shrinked to match the size of the current texture/image. When you resize the button the size of the image does not change. In case you need to create a type of button widget with an auto-adjusted image size, or image rotation, please consider Widget Sprite instead.

See Also#

  • Widgets sample in C# Component Samples suite
  • UnigineScript API sample <UnigineSDK>/data/samples/widgets/button_00

Example#

The following code illustrates how to create a button widget and set its parameters.

Source code (C++)
#include <UnigineWidgets.h>
#include <UnigineUserInterface.h>
using namespace Unigine;

/* .. */

// event handler function
int onButtonClicked()
{
	/* .. */
	
	return 1;
}

/* .. */

// getting a pointer to the system GUI
GuiPtr gui = Gui::getCurrent();

// creating a button widget and setting its caption
WidgetButtonPtr widget_button = WidgetButton::create(gui, "Delete");

// setting a tooltip
widget_button->setToolTip("Delete object(s)");

// rearranging button size
widget_button->arrange();

// setting button position
widget_button->setPosition(10, 10);

// setting onButtonClicked function to handle CLICKED event
widget_button->getEventClicked().connect(onButtonClicked);

// adding created button widget to the system GUI
gui->addChild(widget_button, Gui::ALIGN_OVERLAP | Gui::ALIGN_FIXED);

WidgetButton Class

Members


static WidgetButtonPtr create ( const Ptr<Gui> & gui, const char * str = 0 ) #

Constructor. Creates a button with a given label and adds it to the specified GUI.

Arguments

  • const Ptr<Gui> & gui - GUI, to which the new button will belong.
  • const char * str - Button label. This is an optional parameter.

static WidgetButtonPtr create ( const char * str = 0 ) #

Constructor. Creates a button with a given label and adds it to the Engine GUI.

Arguments

  • const char * str - Button label. This is an optional parameter.

void setBackground ( int background ) #

Sets a value indicating if a background texture should be rendered for the button. By default, the background texture is always rendered. The default is 1.

Arguments

  • int background - 1 to render the background texture, 0 not to render. The default is 1.

int getBackground ( ) const#

Returns a value indicating if a background texture is rendered for the button. The default is 1.

Return value

1 if a background texture is rendered; otherwise, 0.

void setImage ( const Ptr<Image> & image ) #

Sets a new image for the button.
Notice
The button is automatically stretched or shrinked to match the size of the current image. When you resize the button the size of the image does not change. In case you need to create a type of button widget with an auto-adjusted image size, or image rotation, please consider Widget Sprite instead.

Arguments

  • const Ptr<Image> & image - Image to set.

Ptr<Image> getImage ( ) const#

Returns the current button image.
Notice
The button is automatically stretched or shrinked to match the size of the current image. When you resize the button the size of the image does not change. In case you need to create a type of button widget with an auto-adjusted image size, or image rotation, please consider Widget Sprite instead.

Return value

Button image.

void setText ( const char * text ) #

Sets a button text label.

Arguments

  • const char * text - Button label.

const char * getText ( ) const#

Returns the button text label.

Return value

Button label.

void setTextAlign ( int align ) #

Sets alignment of the button label.

Arguments

  • int align - One of the Gui:: Enumeration with ALIGN_* prefixes.

int getTextAlign ( ) const#

Returns alignment of the button label.

Return value

Alignment of the button label: one of the Gui:: Enumeration with ALIGN_* prefixes.

void setTexture ( const char * texture ) #

Sets a new texture to be used as the button image.
Notice
The button is automatically stretched or shrinked to match the size of the current image. When you resize the button the size of the image does not change. In case you need to create a type of button widget with an auto-adjusted image size, or image rotation, please consider Widget Sprite instead.

Arguments

  • const char * texture - Path to a texture file.

const char * getTexture ( ) const#

Returns the path to the current button image texture.
Notice
The button is automatically stretched or shrinked to match the size of the current image. When you resize the button the size of the image does not change. In case you need to create a type of button widget with an auto-adjusted image size, or image rotation, please consider Widget Sprite instead.

Return value

Path to the button image texture.

void setToggleable ( bool toggleable ) #

Sets a value indicating if the button is a toggle button or a simple one.

Arguments

  • bool toggleable - 1 to make the button a toggle button, 0 to make it a simple one. The default is 0.

bool isToggleable ( ) const#

Returns a value indicating if the button is a toggle button or a simple one. The default is 0.

Return value

1 if the button is a toggle button; otherwise, 0.

void setToggled ( bool toggled ) #

Sets a state of the toggle button.

Arguments

  • bool toggled - 1 to press the button, 0 to release it.

bool isToggled ( ) const#

Returns a value indicating if the toggle button is pressed.

Return value

1 if the button is pressed; otherwise, 0.

void setButtonColor ( const Math::vec4 & color ) #

Sets the color to be used for the button.

Arguments

  • const Math::vec4 & color - Four-component vector specifying the color in the RGBA format.

Math::vec4 getButtonColor ( ) const#

Returns the current color for the button.

Return value

Four-component vector specifying the color in the RGBA format.

void setStyleImage ( const Ptr<Image> & image ) #

Sets a button skin image.

Arguments

  • const Ptr<Image> & image - Image to set.

Ptr<Image> getStyleImage ( ) const#

Returns the button skin image.

Return value

Button skin image.

void setStyleTexture ( const char * texture ) #

Sets a button skin texture.

Arguments

  • const char * texture - Path to a texture file.

const char * getStyleTexture ( ) const#

Returns the path to the button skin texture.

Return value

Path to a texture file.
Last update: 2024-12-13
Build: ()