Swing Jpanel don'中的组件;不服从大小/位置
我在jpanel中添加组件时遇到了一些问题,特别是我添加了一个JButton和一个JLabel,但它们似乎没有考虑我给它们的大小和位置Swing Jpanel don'中的组件;不服从大小/位置,swing,Swing,我在jpanel中添加组件时遇到了一些问题,特别是我添加了一个JButton和一个JLabel,但它们似乎没有考虑我给它们的大小和位置 import java.awt.BorderLayout; import java.awt.Color; import java.awt.Dimension; import javax.swing.JButton; import javax.swing.JFrame; import javax.swing.JLabel; import javax.swing.J
import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.Dimension;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
public class test extends JFrame{
private JPanel panel,panel2;
private JLabel insMatriz;
private JButton envMatriz;
public test(){
super("Test");
setLayout(new BorderLayout());
getContentPane().setBackground(Color.red);
panel = new JPanel();
add(panel,BorderLayout.WEST);
panel.setBackground(Color.blue);
panel2 = new JPanel();
add(panel2,BorderLayout.EAST);
panel2.setBackground(Color.GRAY);
panel.setPreferredSize(new Dimension(330,300));
panel2.setPreferredSize(new Dimension(330,300));
insMatriz = new JLabel();
panel.add(insMatriz);
insMatriz.setSize(new Dimension(50,10));
insMatriz.setLocation(5,5);
insMatriz.setText("Insert:");
envMatriz = new JButton();
panel2.add(envMatriz);
envMatriz.setSize(new Dimension(100,50));
envMatriz.setLocation(5,5);
envMatriz.setText("Submit");
setSize(700,400);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setVisible(true);
}
}
我认为你应该在主面板中插入另一个面板。然后将标签插入内面板。这是因为您混合了绝对布局和的。在Swing中,您有两个选项,必须为每个组件选择其中一个。试图同时做这两件事总是会遇到麻烦:
setLayout(null)
,并负责调整子组件的大小和位置。必须使用setBounds/setSize setPosition来定位和调整子组件的大小