Kiwano Engine v1.3.x
kiwano::Button类 参考

按钮组件 更多...

#include <Button.h>

类 kiwano::Button 继承关系图:
kiwano::ButtonBase kiwano::MouseSensor kiwano::Component kiwano::ObjectBase kiwano::RefObject kiwano::Serializable kiwano::Noncopyable

Public 类型

using Callback = Function< void(Button *, Event)>
 按钮回调函数
 
using ClickedCallback = Function< void(Button *)>
 按钮点击回调函数
 
- Public 类型 继承自 kiwano::ButtonBase
enum class  Event {
  MouseEntered , MouseExited , Pressed , Released ,
  Clicked
}
 按钮事件 更多...
 

Public 成员函数

 Button (const Callback &cb)
 创建按钮 更多...
 
void SetCallback (const Callback &cb)
 设置按钮回调函数 更多...
 
void SetCallbackOnClicked (const ClickedCallback &cb)
 设置按钮回调函数 更多...
 
void OnEvent (Event evt) override
 按钮状态变化时 更多...
 
virtual void OnEvent (Event evt)=0
 按钮事件发生时 更多...
 
- Public 成员函数 继承自 kiwano::MouseSensor
bool IsHovering () const
 鼠标是否正悬于角色上
 
bool IsPressing () const
 鼠标是否正按于角色上
 
- Public 成员函数 继承自 kiwano::Component
bool IsEnable () const
 是否启用组件
 
void SetEnabled (bool enabled)
 设置组件启用或禁用
 
ActorGetBoundActor () const
 获取绑定的角色
 
void RemoveFromActor ()
 从角色中移除
 
- Public 成员函数 继承自 kiwano::ObjectBase
 ObjectBase ()
 构造基础对象
 
void SetName (StringView name)
 设置对象名
 
StringView GetName () const
 获取对象名
 
bool IsName (StringView name) const
 判断对象的名称是否相同 更多...
 
void * GetUserData () const
 获取用户数据
 
void SetUserData (void *data)
 设置用户数据 更多...
 
void Hold (RefPtr< ObjectBase > other)
 持有一个对象并管理其生命周期 更多...
 
void Unhold (RefPtr< ObjectBase > other)
 放弃持有的对象 更多...
 
uint64_t GetObjectID () const
 获取对象ID
 
void DoSerialize (Serializer *serializer) const override
 序列化 更多...
 
void DoDeserialize (Deserializer *deserializer) override
 反序列化 更多...
 
virtual bool IsValid () const
 判断对象是否有效 更多...
 
ObjectStatusGetStatus () const
 获取对象状态
 
void SetStatus (const ObjectStatus &status)
 设置对象状态
 
void Fail (StringView msg, int code=ObjectStatus::fail)
 将对象标记为失败状态
 
void ClearStatus ()
 清除对象状态
 
- Public 成员函数 继承自 kiwano::RefObject
void Retain ()
 增加引用计数
 
void Release ()
 减少引用计数
 
uint32_t GetRefCount () const
 获取引用计数
 
- Public 成员函数 继承自 kiwano::Serializable
Vector< uint8_t > Serialize () const
 序列化为字节串
 
void Deserialize (const Vector< uint8_t > &data)
 从字节串反序列化
 
virtual void DoSerialize (Serializer *serializer) const =0
 执行序列化 更多...
 
virtual void DoDeserialize (Deserializer *deserializer)=0
 执行反序列化 更多...
 

额外继承的成员函数

- 静态 Public 成员函数 继承自 kiwano::ObjectBase
static void SetObjectPolicy (const ObjectPolicyFunc &policy)
 设置对象处理策略
 
static bool IsTracingLeaks ()
 是否启用了内存泄漏追踪
 
static void StartTracingLeaks ()
 开始追踪内存泄漏
 
static void StopTracingLeaks ()
 停止追踪内存泄漏
 
static void DumpTracingObjects ()
 打印所有追踪中的对象信息
 
static Vector< ObjectBase * > & GetTracingObjects ()
 获取所有追踪中的对象
 
- 静态 Public 成员函数 继承自 kiwano::RefObject
static void * operator new (size_t size)
 
static void operator delete (void *ptr)
 
static void * operator new (size_t size, std::nothrow_t const &) noexcept
 
static void operator delete (void *ptr, std::nothrow_t const &) noexcept
 
static void * operator new (size_t size, void *ptr) noexcept
 
static void operator delete (void *ptr, void *place) noexcept
 
- Protected 成员函数 继承自 kiwano::ButtonBase
void HandleEvent (kiwano::Event *evt) override
 处理角色事件 更多...
 
- Protected 成员函数 继承自 kiwano::MouseSensor
void HandleEvent (Event *evt) override
 处理角色事件 更多...
 
- Protected 成员函数 继承自 kiwano::Component
virtual void InitComponent (Actor *actor)
 初始化组件 更多...
 
virtual void DestroyComponent ()
 销毁组件 更多...
 
virtual void OnUpdate (Duration dt)
 更新组件 更多...
 
virtual void OnRender (RenderContext &ctx)
 渲染组件 更多...
 
virtual void HandleEvent (Event *evt)
 处理角色事件 更多...
 

详细描述

按钮组件

构造及析构函数说明

◆ Button()

kiwano::Button::Button ( const Callback cb)

创建按钮

参数
cb按钮回调函数

成员函数说明

◆ OnEvent()

void kiwano::Button::OnEvent ( Event  evt)
overridevirtual

按钮状态变化时

实现了 kiwano::ButtonBase.

◆ SetCallback()

void kiwano::Button::SetCallback ( const Callback cb)
inline

设置按钮回调函数

参数
cb按钮回调函数

◆ SetCallbackOnClicked()

void kiwano::Button::SetCallbackOnClicked ( const ClickedCallback cb)
inline

设置按钮回调函数

参数
cb按钮回调函数