我是新来的Java(和一般编程),我试图做我的第一个程序。我被困在同样的问题现在约5个小时,所以我决定寻求帮助。如何将JPanel放在另一个JPanel上?
基本上我试图做一个程序(2D游戏),有20个职位在董事会。每个位置都是蓝色(由player1拥有),红色(由player2拥有)或黑色(不属于任何人)。
我正在讨论的方式主要是我已经提出了一种方法,称为安装游戏,然后是一种玩游戏的方法。我正在开发安装游戏,基本上它所做的只是创建类Background
(扩展JPanel
,并覆盖paintComponent()
)和类Position
(扩展JPanel,并覆盖paintComponent()
)的20个对象。
到目前为止,我坚持把这些位置对象放在背景对象之上。
当我这样做:
Background background= new Background();
frame.getContentPane().add(background);
Position position1= new Position;
frame.getContentPane().add(position1);
frame.setVisible(true);
它只显示了一圈,没有背景,我希望,如果我先添加位置,然后背景,我只有背景和不圆。
无论如何,我是新来的java,我仍然遇到了麻烦,但我尝试搜索解决方案,并且发现了许多不同的解决方案(例如添加位置首先是背景,然后将背景添加到框架等),但我无法让它们中的任何一个工作。
我知道,我将它们都添加到框架的方式(很可能)是完全错误的,但是我这样写,所以你会(希望)确信我写的内容确实会向你显示我的每个类的代码在屏幕上绘制一些东西。
PS:我没有在这里复制我的代码,因为大多数的变量和方法都不在英语,所以它是相当难以阅读,但是如果你仍然认为它的需要,我会添加它。另外,我很抱歉我可能愚蠢的问题,但我有点在这里打墙,我不知道还有什么要尝试。
这很好,谢谢,它并没有真正完全解决我的问题,因为它显示的是错误位置的圆圈,它只显示圆圈的1/4而不是满圈,但至少它显示的是一些东西。从这里开始,如果我无法再发布SSCCE,我会尝试弄清楚自己有什么问题。 再次感谢。 :D – 2013-02-27 20:45:51
重要要求,欢迎您 – mKorbel 2013-02-28 06:20:22