为什么我不能在JavaSwing中使用setbounds方法设置标签的位置?

为什么我不能在JavaSwing中使用setbounds方法设置标签的位置?,java,swing,awt,Java,Swing,Awt,我不能设置一个标签的位置使用挫折的方法,请给我一个解决方案,这 import javax.swing.; import java.awt.event.; import java.awt.*; class login extends JFrame { public static void main(String args[]) { JFrame f1; JLabel l1,l2,l3; JButton sign,cancle;

我不能设置一个标签的位置使用挫折的方法,请给我一个解决方案,这

import javax.swing.; 
import java.awt.event.; 
import java.awt.*; 

class login extends JFrame { 

  public static void main(String args[]) { 

      JFrame f1; 
      JLabel l1,l2,l3; 
      JButton sign,cancle; 
      f1 =new JFrame();
      l1= new JLabel("hi"); 
      f1.add(l1);
      l1.setBounds(170,40,75,25); 
      f1.setSize(500,500); 
      f1.setVisible(true);
      f1.setLayout(null); 
  } 
}
调用
setVisible(true)
时,将调用框架的布局管理器,并根据布局管理器的规则为组件指定大小和位置,默认情况下,布局管理器是BorderLayout

setLayout(null)语句对框架上已可见的组件没有影响,因为您手动设置的边界已由布局管理器重置


无论如何,不要尝试使用空布局。没有理由这样做

我相信你不会把所有的代码都写在一行上,所以不要期望我们读到这样的代码。编辑您的问题并正确设置代码格式。此外,您甚至应该尝试使用setBounds()。Swing设计用于布局管理器。请重新格式化示例并将其作为代码块发布,以便于阅读,并且不要使用
setLayout(null)
f1.setVisible(true);