dl
dl::UI::ButtonSprite9类 参考

精灵按钮 更多...

#include <dl_ui_button_sprite9.h>

继承自 dl::UI::Button .

Public 成员函数

virtual ButtonSprite9Clone () override
 必须实现的函数
 
void SetSize (const Position &size)
 
void SetSpriteRect (Button::State state, const Rect &rect)
 设置精灵quad
 
void SetSpriteColor (Button::State state, const Color &color)
 设置精灵颜色
 
Sprite9GetSpriteCurrent ()
 
virtual bool IsPickup () override
 
virtual void SetOrder (float order) override
 
virtual float GetOrder () override
 
virtual Position GetSize () override
 
virtual Position GetAnchor () override
 
virtual void RenderDebug () override
 
 ~ButtonSprite9 ()
 
- Public 成员函数 继承自 dl::UI::Button
 Button ()
 
 Button (const Button &b)
 
void Update ()
 
void Render ()
 
bool IsClick ()
 控件被点击
 
bool IsDown ()
 控件按下状态
 
bool IsOverOnce ()
 经过按钮,直到离开控件再次进入才会返回真
 
bool IsRadio ()
 
bool IsSelect ()
 控件是选中状态
 
void SetSelect (bool open)
 
void SetMode (Mode mode)
 
void SetDisable (bool disable)
 
void ClearState ()
 清理状态为普通
 
void SetSound (std::string_view click, std::string_view over)
 设置按钮音效
 
State GetState ()
 
CoorGetCoor ()
 添加到Panel后会自动设置Coor数据,要设置位置等 请调用SetElementData
 
float GetOrder (int offset)
 
void SetElementData (const Align::Direction2 &hv, const Position &pos={})
 
void SetElementDataRunAble (bool able)
 
void SetElementDataAutoSize (bool parent_w, bool parent_h)
 
std::string GetString ()
 
void AddText (gcText txt, const std::vector< Color > &mul_col, const std::vector< Position > &mul_offset)
 添加文本属性
 
void AddTextDefault ()
 
void AddText (gcText txt)
 
void AddText (gcText txt, const std::vector< Color > &mul_col)
 
void SetString (std::string_view str)
 
void SetTextAlign (const Align::Direction2 &hv)
 
void SetSizeWithText (bool with, const Position &extra_size)
 设置精灵大小跟随文本
 
void SetName (std::string_view name)
 
void SetCustomRender (CbCustomRender cb)
 
void SetEevntClick (CbEventClick cb)
 
ComponentsGetCpt ()
 
Mode GetMode ()
 
virtual ~Button ()
 

静态 Public 成员函数

static ButtonSprite9Create (const std::vector< Sprite9 * > &mul_spr)
 精灵组成的按钮
 
- 静态 Public 成员函数 继承自 dl::UI::Button
static ButtonGetClickControl ()
 

额外继承的成员函数

- Public 类型 继承自 dl::UI::Button
enum class  State {
  NORMAL , OVER , DOWN , DISABLE ,
  DOWN_OVER , DOWN_DISABLE , MAX_NUM
}
 
enum class  Mode { BUTTON , SWITCH , RADIO }
 
using CbCustomRender = std::function<void(Button*)>
 
using CbEventClick = std::function<void(Button*)>
 
- Protected 成员函数 继承自 dl::UI::Button
std::size_t GetIndex (State state)
 返回索引
 
void _refresh_element_data ()
 
constexpr bool _use_over ()
 
void UpdateTextOrder (float order)
 order变化时需要调用
 
TextDataGetTextData ()
 
- Protected 属性 继承自 dl::UI::Button
Coor_coor
 

详细描述

精灵按钮

在文件 dl_ui_button_sprite9.h23 行定义.

构造及析构函数说明

◆ ~ButtonSprite9()

dl::UI::ButtonSprite9::~ButtonSprite9 ( )
inline

在文件 dl_ui_button_sprite9.h83 行定义.

成员函数说明

◆ Clone()

virtual ButtonSprite9 * dl::UI::ButtonSprite9::Clone ( )
overridevirtual

必须实现的函数

实现了 dl::UI::Button.

◆ Create()

static ButtonSprite9 * dl::UI::ButtonSprite9::Create ( const std::vector< Sprite9 * > & mul_spr)
inlinestatic

精灵组成的按钮

参数
[in]mul_spr多个精灵,浅拷贝
注解
最多五个精灵,普通、经过、按下、禁用(普通)、禁用(按下) 最少3个,缺少的禁用状态叠加灰度,4个时用一样的禁用状态。 可以额外拥有文本

在文件 dl_ui_button_sprite9.h33 行定义.

◆ GetAnchor()

virtual Position dl::UI::ButtonSprite9::GetAnchor ( )
inlineoverridevirtual

实现了 dl::UI::Button.

在文件 dl_ui_button_sprite9.h80 行定义.

◆ GetOrder()

virtual float dl::UI::ButtonSprite9::GetOrder ( )
inlineoverridevirtual

实现了 dl::UI::Button.

在文件 dl_ui_button_sprite9.h75 行定义.

◆ GetSize()

virtual Position dl::UI::ButtonSprite9::GetSize ( )
inlineoverridevirtual

实现了 dl::UI::Button.

在文件 dl_ui_button_sprite9.h79 行定义.

◆ GetSpriteCurrent()

Sprite9 * dl::UI::ButtonSprite9::GetSpriteCurrent ( )
inline

在文件 dl_ui_button_sprite9.h63 行定义.

◆ IsPickup()

virtual bool dl::UI::ButtonSprite9::IsPickup ( )
inlineoverridevirtual

实现了 dl::UI::Button.

在文件 dl_ui_button_sprite9.h65 行定义.

◆ RenderDebug()

virtual void dl::UI::ButtonSprite9::RenderDebug ( )
overridevirtual

重载 dl::UI::Button .

◆ SetOrder()

virtual void dl::UI::ButtonSprite9::SetOrder ( float order)
inlineoverridevirtual

实现了 dl::UI::Button.

在文件 dl_ui_button_sprite9.h69 行定义.

◆ SetSize()

void dl::UI::ButtonSprite9::SetSize ( const Position & size)
inline

在文件 dl_ui_button_sprite9.h44 行定义.

◆ SetSpriteColor()

void dl::UI::ButtonSprite9::SetSpriteColor ( Button::State state,
const Color & color )

设置精灵颜色

参数
[in]state状态,传入MAX_NUM表示所有
[in]quad大小
注解
会拉伸图像

◆ SetSpriteRect()

void dl::UI::ButtonSprite9::SetSpriteRect ( Button::State state,
const Rect & rect )

设置精灵quad

参数
[in]state状态,传入MAX_NUM表示所有
[in]quad大小
注解
会拉伸图像

该类的文档由以下文件生成: