使XML构建的组件产生非接口代码

使XML构建的组件产生非接口代码,xml,user-interface,event-handling,haxe,haxeui,Xml,User Interface,Event Handling,Haxe,Haxeui,我正在用HaxeUI做一个游戏。我使用XML定义设计了一个简单的UI。我需要按钮来执行与UI元素无关的代码,但是,从onClick属性解析的代码看不到在构建接口的区域中定义的任何本地标识符 如何在不必避免使用XML定义的情况下解决此问题?目前没有一种方法与您描述的完全相同,即您使用XML定义单击处理程序,并链接到haxe代码-存在一个与您描述的基本相同的开放问题:-我认为这是一个有用的补充 但是,有以下方法(使用生成宏生成自定义组件): @:build(haxe.ui.macros.Compon

我正在用HaxeUI做一个游戏。我使用XML定义设计了一个简单的UI。我需要按钮来执行与UI元素无关的代码,但是,从onClick属性解析的代码看不到在构建接口的区域中定义的任何本地标识符


如何在不必避免使用XML定义的情况下解决此问题?

目前没有一种方法与您描述的完全相同,即您使用XML定义单击处理程序,并链接到haxe代码-存在一个与您描述的基本相同的开放问题:-我认为这是一个有用的补充

但是,有以下方法(使用生成宏生成自定义组件):

@:build(haxe.ui.macros.ComponentMacros.build(“myxml.xml”))
类MySomething扩展框{
公共职能(新增){
超级();
myButton.onClick=函数(e){
myLabel.text=“单击”;
}
}
}
该宏接受xml(见下文),并为任何具有id的对象创建正确类型的成员变量

<vbox>
    <button id="myButton" />
    <label id="myLabel" />
</vbox>


<vbox>
    <mysomething />
    <mysomething />
    <mysomething />
</vbox>