Java JPanel和JButton,无法理解如何布局2个简单按钮
我从JPanel开始,我尝试在一个框架上放置两个简单的按钮,我可以放置按钮,但不能定位它们,下面是我的代码:Java JPanel和JButton,无法理解如何布局2个简单按钮,java,swing,jpanel,jbutton,layout-manager,Java,Swing,Jpanel,Jbutton,Layout Manager,我从JPanel开始,我尝试在一个框架上放置两个简单的按钮,我可以放置按钮,但不能定位它们,下面是我的代码: JFrame frame = new JFrame(); frame.setSize(500,500); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); JButton but = new JButton("text"); JButton but2 = new JButton("list"); JPanel p
JFrame frame = new JFrame();
frame.setSize(500,500);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
JButton but = new JButton("text");
JButton but2 = new JButton("list");
JPanel panel= new JPanel(new GridLayout(1, 2));
panel.setSize(100, 100);
panel.add(but);
panel.add(but2);
frame.add(panel);
frame.setVisible(true);
这是我想要的草图:
请查看布局填充和边框以解决此问题
import java.awt.*;
import javax.swing.*;
import javax.swing.border.EmptyBorder;
class TwoButtonLayout {
public static void main(String[] args) {
Runnable r = new Runnable() {
@Override
public void run() {
// adjust numbers to need..
JPanel panel = new JPanel(new GridLayout(1, 2, 40, 40));
// adjust numbers to need..
panel.setBorder(new EmptyBorder(20,30,20,30));
panel.setBackground(Color.WHITE);
JButton but = new JButton("text");
JButton but2 = new JButton("list");
panel.add(but);
panel.add(but2);
JOptionPane.showMessageDialog(null, panel);
}
};
// Swing GUIs should be created and updated on the EDT
// http://docs.oracle.com/javase/tutorial/uiswing/concurrency
SwingUtilities.invokeLater(r);
}
}
请查看布局填充和边框以解决此问题
import java.awt.*;
import javax.swing.*;
import javax.swing.border.EmptyBorder;
class TwoButtonLayout {
public static void main(String[] args) {
Runnable r = new Runnable() {
@Override
public void run() {
// adjust numbers to need..
JPanel panel = new JPanel(new GridLayout(1, 2, 40, 40));
// adjust numbers to need..
panel.setBorder(new EmptyBorder(20,30,20,30));
panel.setBackground(Color.WHITE);
JButton but = new JButton("text");
JButton but2 = new JButton("list");
panel.add(but);
panel.add(but2);
JOptionPane.showMessageDialog(null, panel);
}
};
// Swing GUIs should be created and updated on the EDT
// http://docs.oracle.com/javase/tutorial/uiswing/concurrency
SwingUtilities.invokeLater(r);
}
}
这里已经问了很多次了,比如这里已经问了很多次了,比如这里