2012-12-01 31 views
1

我已经使用LWUIT创建了一个应用程序。它使用标题栏,这样LWUIT:如何防止J2ME中的按钮颜色改变

enter image description here

它使用该容器。在这个标题栏容器下,我创建了滚动列表。

奇怪的部分是,如果我滚动此列表,标题栏中按钮的颜色(菜单按钮和过滤器按钮)将发生变化。当我尝试设备中的应用程序时,它就发生了。当我尝试在仿真器使用它,它就好了

这里是我创建

b_menu.getUnselectedStyle().setBorder(null); 
    b_menu.getSelectedStyle().setBorder(null); 
    b_menu.getPressedStyle().setBorder(null); 
    b_menu.setIcon(ImageUtil.loadImage("/menu.png")); 
    b_menu.setRolloverIcon(ImageUtil.loadImage("/menu.png")); 
    b_menu.setPressedIcon(ImageUtil.loadImage("/menu.png")); 
    b_menu.setName("menu"); 
    b_menu.getStyle().setBgTransparency(0); 
    b_menu.getStyle().setBgPainter(new LinearGradientPainter(0xcf266a, 0xcf266a, false)); 
    b_menu.getSelectedStyle().setPadding(5, 5, 5, 5); 
    b_menu.getSelectedStyle().setMargin(0, 0, 0, 0); 
    b_menu.getUnselectedStyle().setPadding(5, 5, 5, 5); 
    b_menu.getSelectedStyle().setMargin(0, 0, 0, 0); 
    b_menu.getSelectedStyle().setBgColor(0xcf266a, false); 
    b_menu.getSelectedStyle().setBgTransparency(0); 
    b_menu.getSelectedStyle().setBgPainter(new LinearGradientPainter(0xcf266a, 0xcf266a, false)); 
    b_menu.getUnselectedStyle().setBgTransparency(0); 
    b_menu.getUnselectedStyle().setBgPainter(new LinearGradientPainter(0xcf266a, 0xcf266a, false)); 
    b_menu.getPressedStyle().setBgTransparency(0); 
    b_menu.getPressedStyle().setBgPainter(new LinearGradientPainter(0xcf266a, 0xcf266a, false)); 

按钮的代码,你见过和解决这个问题?

问候

吉瑞

+0

你怎么隐藏本机的标题栏?我只能将应用程序设置为全屏模式,但我也失去了顶级栏。 – Mun0n

+1

@jmunoz试试这个 'Display.getInstance()。setTouchScreenDevice(true); (Display.getInstance()。getImplementation(),“Display.getInstance()。setCommandBehavior(BACK);' – giripp

+0

)这不起作用,我找到一种方法来显示状态栏使用Display.getInstance nokia.ui.canvas.status_zone“,Boolean.TRUE);' – Mun0n

回答

2

呵呵,答案是我也必须改变以非选择方式。 这里的代码

b_menu.getUnselectedStyle().setBorder(null); 
    b_menu.getSelectedStyle().setBorder(null); 
    b_menu.getPressedStyle().setBorder(null); 

    b_menu.setIcon(ImageUtil.loadImage("/menu.png")); 
    b_menu.setRolloverIcon(ImageUtil.loadImage("/menu.png")); 
    b_menu.setPressedIcon(ImageUtil.loadImage("/menu.png")); 

    b_menu.setName("menu"); 

    b_menu.getStyle().setBgTransparency(0); 
    b_menu.getStyle().setBgPainter(new LinearGradientPainter(0xcf266a, 0xcf266a, false)); 

    b_menu.getSelectedStyle().setPadding(5, 5, 5, 5); 
    b_menu.getSelectedStyle().setMargin(0, 0, 0, 0); 
    b_menu.getSelectedStyle().setBgTransparency(0); 
    b_menu.getSelectedStyle().setBgPainter(new LinearGradientPainter(0xcf266a, 0xcf266a, false)); 

    b_menu.getUnselectedStyle().setPadding(5, 5, 5, 5); 
    b_menu.getUnselectedStyle().setMargin(0, 0, 0, 0); 
    b_menu.getUnselectedStyle().setBgTransparency(0); 
    b_menu.getUnselectedStyle().setBgPainter(new LinearGradientPainter(0xcf266a, 0xcf266a, false)); 

    b_menu.getPressedStyle().setBgTransparency(0); 
    b_menu.getPressedStyle().setBgPainter(new LinearGradientPainter(0xcf266a, 0xcf266a, false)); 

    b_menu.addActionListener(this); 
    b_menu.repaint(); 

感谢您观看此问题!

问候

吉瑞

+0

接受你的答案来解决这个问题。 – Mun0n

+1

还有几个小时要去做,谢谢:) – giripp