2013-09-26 50 views
1

我想动态地改变一个命令的文本取决于一些国家,所以通常我去Google和LWUIT博客说MenuBar上使用refreshTheme()应该做的伎俩。 所以我用下面的代码,但遗憾的是没有工作LWUIT menuBar refreshTheme不工作?

if (isPlaying) { 
      playButton.setCommandName("Pause"); 
}else{ 
      playButton.setCommandName("Play"); 
} 
this.getMenuBar().refreshTheme(); 

有什么错我的代码?还是我误解了一些东西?

回答

1

它不会刷新。当命令被放置时,按钮的文本被设置,所以你不能这样做。

您将需要使用removeCommand(cmd)后跟addCommand(newCmd)

此外,refreshTheme()与任何东西都没有任何关系。

+0

因此,我应该只是removeCommand然后setCommandName,然后addCommand再次相同的形式? 没有必要refreshTheme在窗体或menuBar或任何东西? –

+0

是的,这应该工作。重绘可能是必要的。多年来,我们只是忙于Codename One,我不记得哪些问题在什么时候改变。 –