如何在 JFrame 的任意位置设置按钮的位置?


若要设置按钮在 JFrame 中任意位置,则可以使用 setBounds() 方法。我们首先创建一个框架和一个面板 -

JFrame frame = new JFrame("Demo Frame");
JPanel panel = new JPanel();
frame.getContentPane();

创建一个组件,例如标签,并使用 setBounds() 设置其维度。在此处,你可以将位置设置为 x 和 y 坐标的形式,并将按钮放置在框架中的任何位置 -

JButton button = new JButton("Demo Button");
Dimension size = button.getPreferredSize();
button.setBounds(300, 180, size.width, size.height);

以下是一个在 JFrame 中任意位置设置按钮位置的示例 -

示例

package my;
import java.awt.Dimension;
import javax.swing.BorderFactory;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.WindowConstants;
public class SwingDemo {
   public static void main(String[] args) {
      JFrame frame = new JFrame("Demo Frame");
      JPanel panel = new JPanel();
      frame.getContentPane();
      JButton button = new JButton("Demo Button");
      Dimension size = button.getPreferredSize();
      button.setBounds(300, 180, size.width, size.height);
      panel.setLayout(null);
      panel.add(button);
      panel.setBorder(BorderFactory.createEmptyBorder(10, 10, 10, 10));
      frame.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
      frame.add(panel);
      frame.setSize(500, 300);
      frame.setVisible(true);
   }
}

输出

更新日期:2019-07-30

5 千+ 浏览

激发你的 事业

通过完成课程获得认证

开始
广告