我正在尝试为包含卡片的手创建gui。卡本身是扩展JPanel的类的实例。
我需要创建一个gui,最多容纳7个卡对象,这些对象堆叠在一起,彼此重叠,就像您会做的那样
(忽略JFrames)。
使用Swing是否可以实现,如果可以的话,您可以指出合适的layoutmanager吗?
最佳答案
我认为在您的情况下,您需要使用JLayeredPane。您可以添加任意数量的JPanels以适合JLayeredPane内
layeredPane = new JLayeredPane();
layeredPane.setPreferredSize(new Dimension(300, 310));
layeredPane.setBorder(BorderFactory.createTitledBorder(
"jlayered example"));
layeredPane.addMouseMotionListener(new MouseMotionAdapter() {
});
for (int i = 0; i < ...number of panels...; i++) {
JPanel panel = new Panel("panel"+i);
layeredPane.add(panel, new Integer(i));
}
单击https://docs.oracle.com/javase/tutorial/uiswing/components/layeredpane.html检查如何使用JlayeredPane
如果希望
jpanels
彼此重叠,只需将布局设置为null layout
并在其中添加Jpanels
。关于java - Java创建类似于卡牌的GUI,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/36362053/