我有一个像这样创建的图像标签。
Painter painter = new Painter()
{
public void paint(Graphics g, Rectangle rctngl)
{
g.setColor(0x000000);
g.drawLine(0, 0, 100, 100);
}
};
mapScreen = new Form("Map");
try
{
Image image = Image.createImage("/res/Sample.jpg");
Label labelImage = new Label(image);
labelImage.setScrollVisible(true);
labelImage.setFocus(true);
labelImage.getStyle().setBgPainter(painter);
mapScreen.addComponent(labelImage);
我想在它上面绘制一些线条。我尝试过像上面的代码一样使用画家,但我无法成功地做到这一点。我怎么做错了,怎么解决呢?
编辑:
线条的绘制是成功的,但问题是这些线条是在labelImage后面绘制的。我怎样才能将线条画在前面?
答案 0 :(得分:2)
您需要将画家应用于Unselected和Selected样式,因为您给予标签焦点。你也画了一条对角线而不是一条海峡线。
答案 1 :(得分:1)
如何派生Label
类并实现paint(Graphics g)
方法呢?在那里,您可以使用Graphics
对象'g'来draw
line
和image
。