Codenameone 工具栏组件代码名

Codenameone 工具栏组件代码名,codenameone,Codenameone,在ComponentInspector(上图)的工具栏中有3个组件,但如果我想获取菜单按钮,我无法获取它 //it gives label, title System.out.println("z " + f.getToolbar().getComponentAt(0)); //it gives button, title command System.out.println("zz" + f.getToolbar().getComponentAt(1)); //it gives no of

在ComponentInspector(上图)的工具栏中有3个组件,但如果我想获取菜单按钮,我无法获取它

//it gives label, title
System.out.println("z " + f.getToolbar().getComponentAt(0));

//it gives button, title command
System.out.println("zz" + f.getToolbar().getComponentAt(1));

//it gives no of component = 2
System.out.println("zzz" + f.getToolbar().getComponentCount());

为什么我不能获得工具栏的菜单按钮命令?ps我已将命令行为设置为侧。

菜单按钮不是命令,不应直接操作。它有独特的行为,是故意抽象出来的。使用
getComponent(int)
是一种脆弱的方法,因为它依赖于可能突然改变且没有任何警告的特定行为

您需要考虑您感兴趣的用例,并通过它进行跟进

例如:

  • 如果要控制菜单图标,可以通过
    sideMenuImage
    sidemenuppressimage
  • 如果要设置菜单按钮的样式,可以使用
    MenuButton
    UIID

菜单按钮不是命令,不应直接操作。它有独特的行为,是故意抽象出来的。使用
getComponent(int)
是一种脆弱的方法,因为它依赖于可能突然改变且没有任何警告的特定行为

您需要考虑您感兴趣的用例,并通过它进行跟进

例如:

  • 如果要控制菜单图标,可以通过
    sideMenuImage
    sidemenuppressimage
  • 如果要设置菜单按钮的样式,可以使用
    MenuButton
    UIID

我在主题常量(gui)中没有看到sidemenuIMage。我必须手动添加它吗?是的,我认为它应该在那里,但如果它不确定使用我的大小写,因为它区分大小写。我在主题常量(gui)中没有看到sidemenuIMage。我必须手动添加它吗?是的,我认为它应该在那里,但如果它不确定使用我的大写,因为它区分大小写。