我在这里工作的java媒体播放器的GUI代码。当我尝试运行主类时,我一直得到以下错误消息:
Exception in thread "main" java.lang.IllegalArgumentException: illegalcomponent position
at java.awt.Container.addImpl(Container.java:1085)
at java.awt.Container.add(Container.java:465)
at dj2.gui.ArtistsPane.<init>(ArtistsPane.java:19)
at dj2.gui.MainFrame.<init>(MainFrame.java:36)
at dj2.test.GUITest.main(GUITest.java:21)
我认为问题来自我的artistspan类,因为另外两个错误是引用它。
下面是我为artistspan使用的代码:
public class ArtistsPane extends JPanel{
public ArtistsPane(){
this.setLayout(new FlowLayout());
add(new TracksAddRemoveToolBar(),FlowLayout.TRAILING);}}
在add方法级别检测到问题。有什么问题吗?谢谢!
您使用FlowLayout。在添加组件时不使用TRAILING,而是在定义布局本身时,它属于FlowLayout构造函数参数。所以从add方法中去掉这段代码。
。,改变
public class ArtistsPane extends JPanel{
public ArtistsPane(){
this.setLayout(new FlowLayout());
add(new TracksAddRemoveToolBar(),FlowLayout.TRAILING);}}
public class ArtistsPane extends JPanel{
public ArtistsPane(){
setLayout(new FlowLayout(FlowLayout.TRAILING));
add(new TracksAddRemoveToolBar());
} // please place your brakcets with care
}