自己的按钮标签容器:如何初始化所有按钮做同样的事情?
Own Tabs Container of Buttons: how to initialize all of them doing the same?
我刚刚创建了自己的 Container,它的结构是这样的:
Container
|- TabsContainer
|-Button1
|-Button2
|-Button3
...
应该是这样的:
并定位在屏幕底部,像这样:
在我创建的每个表单中。
当我将此自定义容器添加到我的 4 个表单时,我仍然希望所有按钮都执行完全相同的操作。我怎么能这样做?在什么功能中? before
?
我已经尝试 onPostShow()
我的登录屏幕,方法是让它们都具有其独特的组件根并添加一个 actionListener,但它没有用。
此外,选项卡没有 "blank containers" 但仍然描绘了按钮,但它们不应该。看这里:
我该如何解决这两个问题?
要使其在全球范围内运行,您需要将 actionListener
直接添加到按钮。
创建容器并添加按钮后,依次右键单击它们和select 事件 -> 动作事件。这将生成 onComponentAction 方法,您可以在其中为该按钮编写代码。
你应该得到类似这样的东西:
@Override
protected void onContainer_Button1Action(Component c, ActionEvent event) {
//Write all you want this button to do here
}
我确定您正在努力避免代码重复,正如您在 中提到的那样。使用通用容器比以前的方法更安全,更不容易出错。
Codename One 还支持旧 GUI 构建器中的 EmbeddedContainer
功能。因此,您可以为 6 个选项卡创建一个 Container
实例(在添加新 GUI 元素菜单中选择 "Container")并将它们作为 EmbeddedContainer
UI。请注意,新的 GUI 构建器不支持此功能,它基于更传统的 GUI 构建器方法,它可能会使应用程序中的导航行为有些 "odd".
在 new GUI builder 中,您可以编写通用代码来映射到此,因为表单将直接映射到单个 class。
我刚刚创建了自己的 Container,它的结构是这样的:
Container
|- TabsContainer
|-Button1
|-Button2
|-Button3
...
应该是这样的:
并定位在屏幕底部,像这样:
在我创建的每个表单中。
当我将此自定义容器添加到我的 4 个表单时,我仍然希望所有按钮都执行完全相同的操作。我怎么能这样做?在什么功能中? before
?
我已经尝试 onPostShow()
我的登录屏幕,方法是让它们都具有其独特的组件根并添加一个 actionListener,但它没有用。
此外,选项卡没有 "blank containers" 但仍然描绘了按钮,但它们不应该。看这里:
我该如何解决这两个问题?
要使其在全球范围内运行,您需要将 actionListener
直接添加到按钮。
创建容器并添加按钮后,依次右键单击它们和select 事件 -> 动作事件。这将生成 onComponentAction 方法,您可以在其中为该按钮编写代码。
你应该得到类似这样的东西:
@Override
protected void onContainer_Button1Action(Component c, ActionEvent event) {
//Write all you want this button to do here
}
我确定您正在努力避免代码重复,正如您在
Codename One 还支持旧 GUI 构建器中的 EmbeddedContainer
功能。因此,您可以为 6 个选项卡创建一个 Container
实例(在添加新 GUI 元素菜单中选择 "Container")并将它们作为 EmbeddedContainer
UI。请注意,新的 GUI 构建器不支持此功能,它基于更传统的 GUI 构建器方法,它可能会使应用程序中的导航行为有些 "odd".
在 new GUI builder 中,您可以编写通用代码来映射到此,因为表单将直接映射到单个 class。