首先,我非常了解布局管理器的存在,在这种情况下,我只是不想使用它。
我正在为应用程序编写一个简单的主菜单,但是无论我做什么,图像(JLabel
)始终将其自身设置在屏幕的左上角。我尝试使用两种方法(setLocation
,setBounds
),但没有任何区别。
我确定这是一个愚蠢的错误,但我似乎无法弄清楚。
这是我的代码:
import javax.swing.*;
public class Main extends JFrame{
protected ImageIcon createImageIcon(String path,
String description) {
java.net.URL imgURL = getClass().getResource(path);
if (imgURL != null) {
return new ImageIcon(imgURL, description);
} else {
System.err.println("Couldn't find file: " + path);
return null;
}
}
Main() {
ImageIcon image1=createImageIcon("/monopoly.jpg","");
JLabel image1l=new JLabel(image1);
image1l.setLocation(200,200);
image1l.setBounds(330, 300, 140, 60);
add(image1l);
}
public static void main(String[] args) {
Main f=new Main();
f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
f.setVisible(true);
f.pack();
f.setTitle("Monopoly");
f.setSize(800,800);
f.setLocationRelativeTo(null);
f.setLayout(null);
}
}