是否可以用Java绘制图片?

问题描述 投票:0回答:1

我知道必须有一个,但是如果我添加一个Label(应该是我的backgrund),然后在其上绘制(而不是在所有空间上绘制),背景将不会显示。我很确定这是因为Java完全用标准的灰色覆盖了它,但是我不知道如何告诉Java不要这样做。 setOpaque(true和false(相同))仅停止更新我不想再次绘制的像素(重新绘制之后)。感谢您的帮助

java jlabel
1个回答
0
投票

自定义绘画(在任何组件上的绘画都通过重写paintComponent(...)方法来完成。]

因此您可以扩展您的JLabel并添加自定义代码:

@Override
protected void paintComponent(Graphics g)
{
    super.paintComponent(g); // this will paint the label and its Icon

    // add custom code here
}

阅读Swing教程的Custom Painting部分,以获取更多信息和示例。>

或另一种选择是扩展JPanel并绘制Image,然后进行自定义绘制。这样,所有绘画代码都位于一种方法中。

尝试两种方法,看看哪种方法满足您的确切要求。

© www.soinside.com 2019 - 2024. All rights reserved.