如何用指定的坐标在另一个Jlabel的顶部显示Jlabel



我正在为TIC TAC TOE项目进行GUI,在该项目中,我想在单击相应的区域时获得图像(播放器的移动(。但是,我不知道如何在另一个Jlabel(背景(上显示Jlabel(Move(。

我已经搜索并尝试使用分层台球,但是当我运行它时,它只是未能显示整个帧。我是GUI的新手,所以我不确定是否正确实施了。

layer = new JLayeredPane(); //set up the board as background String path = "sampleUrl"; URL url = new URL(path); BufferedImage image = ImageIO.read(url); bg4 = new JLabel(new ImageIcon(image)); layer.add(bg4, new Integer(-1)); frame.add(layer); frame.pack(); frame.addMouseListener(new MouseListener4()); String xPath = "sampleUrl"; URL xUrl = new URL(xPath); BufferedImage x = ImageIO.read(xUrl); icon = new JLabel(new ImageIcon(x)); layer.add(icon);

它只是显示一个最小宽度和高度的窗口,而无需显示背景。此代码或其他任何方法都可以将Jlabel放在另一个Jlabel上方?

是否有问题?

您可以将一个标签对象添加到另一个标签对象,因为jlabel是一个容器。尝试这样的事情。

JLabel parentLabel = new JLabel("Parent");
JLabel childLabel = new JLabel("Child");
parentLabel.add(childLabel );

我强烈建议您阅读有关javafx的信息非常轻松地使用Gridpane彼此之间。有关:https://docs.oracle.com/javafx/2/

最新更新