Macro
Macro in Live Widget
you should focus four kinds of macros:
#[derive(Live)]
#[derive(LiveHook)]
#[live]
#[rust]
#[derive(Live)]
这个宏用于为结构体生成实现LiveTrait
的代码。LiveTrait
是Makepad中用于处理动态数据的一种方式。当你在一个结构体上使用这个宏,它会自动生成一些方法,这些方法可以让你的结构体在运行时动态地改变其值。
这对于需要在运行时改变状态的UI组件来说非常有用
LiveTrait
主要关注如何改变数据
#[derive(LiveHook)]
这个宏用于为结构体生成实现LiveHookTrait
的代码。LiveHookTrait
是Makepad中用于处理动态数据变化的一种方式。当你在一个结构体上使用这个宏,它会自动生成一些方法,这些方法可以让你的结构体在其值发生变化时执行一些操作。
对于需要在数据变化时执行特定操作的UI组件来说非常有用,例如,当一个按钮被点击时,你可能希望执行一些操作。
LiveHookTrait
主要关注数据改变时应该执行什么操作
#[live]
:
这个宏用于标记结构体中的字段,这些字段的值可以在运行时动态地改变。当你在一个字段上使用这个宏,Makepad会自动生成一些代码,这些代码可以让这个字段的值在运行时动态地改变。
#[rust]
这个宏用于标记结构体中的字段,这些字段的值不能在运行时动态地改变。当你在一个字段上使用这个宏,Makepad会自动生成一些代码,这些代码可以确保这个字段的值在运行时不会动态地改变。