java - 如何将图像添加到面板的任意位置 (x,y)

标签 java swing

我想将图像或包含图像的标签添加到面板中的任何位置,这将由用户单击面板决定(在用户在面板中单击的位置添加图像)。 如何做到这一点。

谢谢

最佳答案

尝试(并调整)这个sscce :

import java.awt.Dimension;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;

import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;

public class JLabelOnClick extends JFrame {

    public static void main(String[] args) {
    final JFrame frame = new JLabelOnClick();
    final JPanel panel = new JPanel();
    panel.setLayout(null);
    frame.setContentPane(panel);

    frame.addMouseListener(new MouseAdapter() {
        @Override
        public void mouseClicked(MouseEvent e) {
        // if you want an image instead, use the JLabel(Icon image)
        // constructor
        JLabel label = new JLabel("test");
        label.setBounds(e.getX(), e.getY(), label.getPreferredSize().width, label
            .getPreferredSize().height);
        panel.add(label);
        panel.validate();
        frame.repaint();
        }
    });

    frame.setSize(new Dimension(200, 200));
    frame.setVisible(true);
    }

}

关于java - 如何将图像添加到面板的任意位置 (x,y),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2515902/

相关文章:

java - 如何在依赖项目上强制安装maven?

java - 有没有更快的方法从 Sqlite 查询中遍历行?

java - 使用 JPanel 引用更改子组件?

Java/Swing : Desktop. open() 导致 GTK-ERROR

java - 将多个参数传递给 web.xml 中的 org.apache.cxf.jaxrs.swagger.Swagger2Feature

java - Spring MVC Filter解决方案

java - 为什么 JXTable 丢失输入而 JTable 没有?

java - 将使用 AWT 和 Swing 绘制电影的 Java 应用程序移植到服务器端

java - 使用按钮作为列表的渲染器

java - 我应该在哪里将游戏循环放入挥杆应用程序?