gpt4 book ai didi

java - LWUIT标签: Creating a Custom Label

转载 作者:行者123 更新时间:2023-12-01 19:05:58 25 4
gpt4 key购买 nike

我正在尝试创建自定义标签。我想在 Image 上做类似标记的事情取决于用户输入的内容。我真的不知道该怎么做,但我希望你知道我想在这里实现什么。派生 Label 类的正确方法是什么?这是我的代码。

class CustomLabel extends Label
{
List paths;
Image image;
public CustomLabel(Image img,List paths)
{
this.image = img;
this.paths = paths;
}

public void paint(Graphics g)
{
g.setColor(0x000000);
for (int i = 0; i < paths.size(); i++)
{
Path path = (Path)paths.getModel().getItemAt(i);
int firstLocX = path.discoveredNode.getX();
int firstLocY = path.discoveredNode.getY();
int secondLocX = path.nodeDiscovered.getX();
int secondLocY = path.nodeDiscovered.getY();
g.drawLine(firstLocX, firstLocY, secondLocX, secondLocY);
}
g.drawImage(image, 0, 0);
UIManager.getInstance().getLookAndFeel().drawLabel(g, this);
}
}

我希望你能帮我解决这个问题。

谢谢

最佳答案

您不应该使用UIManager.getInstance().getLookAndFeel().drawLabel(g, this);

由于您希望绘图显示在顶部,因此您希望先绘制标签,然后再编写代码,因此 paint 方法中的第一行应该是 super.paint(g) 它将处理这个问题。

你对drawImage的调用将其绘制在0,0处,这总是错误的。您应该根据 getX()getY() 定位绘图。

话虽如此,我没有看到任何值得子类化的东西。如果您只想绘制一个标志,为什么不创建一个在背景中具有与给定标志对齐的图像的样式。然后只需有条件地将正确的 UIID 分配给标签即可。

关于java - LWUIT标签: Creating a Custom Label,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10092657/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com