【问题标题】:setIcon in j2me to set icons for buttonsj2me 中的 setIcon 为按钮设置图标
【发布时间】:2010-09-15 09:07:48
【问题描述】:

我正在尝试将图标(缩放的图像)作为按钮的一部分,该按钮还包含一些文本。我正在为诺基亚 SDK(S60 设备)使用 J2ME 编程并使用 Eclipse。

代码如下:
but = new Button("Some text");
Image img = null;
try {
img = Image.createImage("/flower.png");
} catch(IOException e) {
e1.printStackTrace();
}
but.setIcon(img);

以上行是正常工作的代码。我在将图像缩放到按钮大小时遇到​​问题。每当我尝试这样做时,都会得到除以零的错误。我用来缩放图像的函数和缩放方式是:
Image img2 = null;
img2 = img.scaled(but.getWidth()/2, but.getHeight());
but.setIcon(img2);

我无法弄清楚为什么每次尝试运行上述代码时都会出现除以零的错误。还有其他我应该使用的功能吗?还是我缺少什么?

【问题讨论】:

    标签: java-me button icons nokia


    【解决方案1】:

    使用的是哪个 UI 框架,是 LWUIT 吗?如果是,则在显示表单之前您无法获取任何组件的宽度/高度,您应该改用 getPreferredWidth

    【讨论】:

    • 嗨,是的,我正在使用 LWUIT。我认为问题的出现是因为我使用分数来缩放宽度和高度,而它们是整数。说 (0.5)*width 可能在整数算术中变为 0。由于我一直忙于其他事情,所以我还没有尝试过,但我认为这可能是一个可能的原因。
    • 你根本没有分数,getWidth返回int,当你将它除以2时,你会得到一个int而不是float,除非你除以2.0f。
    猜你喜欢
    • 2010-12-26
    • 1970-01-01
    • 2015-03-04
    • 1970-01-01
    • 1970-01-01
    • 2017-01-02
    • 1970-01-01
    • 1970-01-01
    • 2017-03-27
    相关资源
    最近更新 更多