为了账号安全,请及时绑定邮箱和手机立即绑定

如何查看分层窗格内的组件

如何查看分层窗格内的组件

吃鸡游戏 2021-11-03 15:00:46
我在 a 中放置了两个组件,JLayeredPane但无法使它们可见。这是一个相当的MCV代码。我如何看到我的JTextField和JLabel里面的layeredPane?import java.awt.BorderLayout;import java.awt.Color;import java.awt.Font;import javax.swing.BorderFactory;import javax.swing.JFrame;import javax.swing.JLabel;import javax.swing.JLayeredPane;import javax.swing.JPanel;import javax.swing.JTextField;import javax.swing.border.EtchedBorder;public class GUI extends JFrame {    JFrame mainframe = new JFrame();    JPanel centrejPanel = new JPanel();    JTextField keyText;    JLabel jLabel;    public GUI() {    mainframe.setLayout(new BorderLayout());    mainframe.setSize(1200, 700);    mainframe.getContentPane().add(centrejPanel, BorderLayout.CENTER);    keyText = new JTextField("hello");    keyText.setOpaque(false);    keyText.setCaretColor(Color.BLACK);    keyText.setBorder(BorderFactory.createEtchedBorder(EtchedBorder.LOWERED));    jLabel = new JLabel("hello");    jLabel.setFont(new Font("Palatino", Font.BOLD, 18));    jLabel.setVerticalAlignment(JLabel.TOP);    jLabel.setForeground(Color.GRAY);    JLayeredPane layeredPane = new JLayeredPane();    layeredPane.add(keyText, 1);    layeredPane.add(jLabel, 0);    centrejPanel.getRootPane().add(layeredPane);    mainframe.setVisible(true);    }}public class Main {    public static void main(String[] args) {        GUI gui = new GUI();    }}
查看完整描述

1 回答

?
拉丁的传说

TA贡献1789条经验 获得超8个赞

//mainframe.setLayout(new BorderLayout());

并不需要。框架内容窗格的默认布局管理器是 BorderLayout。

//mainframe.getContentPane().add(centrejPanel, BorderLayout.CENTER);

不要向框架的内容窗格添加空面板。只需将 LayeredPane 直接添加到内容窗格即可。

keyText.setBounds(0, 50, 100, 20);
...
jLabel.setBounds(0, 150, 100, 20);

JLayeredPane 使用空布局,因此您有责任设置添加到分层窗格的每个组件的大小和位置。

//centrejPanel.getRootPane().add(layeredPane);

不要将分层窗格添加到根窗格。甚至不知道这是否可行,但无论如何,内容窗格只会覆盖分层窗格。

阅读 Swing 教程中有关使用顶级容器的部分,了解所有框架层的结构。

mainframe.add(layeredPane);

只需将分层窗格直接添加到框架的内容窗格即可。阅读有关如何使用 LayeredPane的 Swing 教程获取更多信息和工作示例。

在学习新概念或组件时,始终从教程中的示例开始。


查看完整回答
反对 回复 2021-11-03
  • 1 回答
  • 0 关注
  • 102 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信