JButton在Java中的定位

JButton在Java中的定位,java,user-interface,button,awt,frame,Java,User Interface,Button,Awt,Frame,这是非常基本的代码,但我只是需要一些帮助来理解 我有一个按钮,我想把它放在面板的东侧。。有什么建议吗 public class ButtonText { public static void main(String[] args) { Frame frame=new Frame("Button Frame"); Button button = new Button("Submit"); frame

这是非常基本的代码,但我只是需要一些帮助来理解

我有一个按钮,我想把它放在面板的东侧。。有什么建议吗

    public class ButtonText { 
        public static void main(String[] args) {
            Frame frame=new Frame("Button Frame");
            Button button = new Button("Submit"); 
            frame.setLayout(new FlowLayout());
            frame.add(button, BorderLayout.EAST);
            frame.setSize(200,100);
            frame.setVisible(true);
            frame.addWindowListener(new WindowAdapter()
            {
                public void windowClosing(WindowEvent e){
                System.exit(0);
            }
        });
    }
看起来像这样


任何帮助都将不胜感激,谢谢

可以使用在框架中定位元素的布局。看一看。您使用的是,但您需要了解每个布局和元素定位规则。

您可以使用在框架中定位元素的布局。看一看。您正在使用,但需要了解每个布局和规则定位元素。

要使用边框布局管理器布局用户界面,需要将框架的布局设置为边框布局的实例。默认的FlowLayout从左到右设置组件,必要时设置到下一行

frame.setLayout(new BorderLayout());
frame.add(button, BorderLayout.EAST);

要使用BorderLayout管理器布局用户界面,需要将框架的布局设置为BorderLayout的实例。默认的FlowLayout从左到右设置组件,必要时设置到下一行

frame.setLayout(new BorderLayout());
frame.add(button, BorderLayout.EAST);

FlowLayout
不能使用
BorderLayout
约束


尝试使用
BorderLayout
而不是
FlowLayout
,它应该可以正常工作。

FlowLayout
不能使用
BorderLayout
约束


尝试使用
BorderLayout
而不是
FlowLayout
,它应该可以正常工作。

FlowLayout不允许您这样做,您应该设置

     frame.setLayout(new BorderLayout());
     frame.add(button, BorderLayout.EAST);

为了让它发挥作用


Flowlayout只定位像水平堆栈这样的东西。

Flowlayout不允许您这样做,您应该设置

     frame.setLayout(new BorderLayout());
     frame.add(button, BorderLayout.EAST);

为了让它发挥作用


Flowlayout只定位像水平堆栈这样的东西。

您可能想试试这样的东西

Frame frame=new Frame("Button Frame");

Button button = new Button("Submit"); 

HorizontalPanel hp = new HorizontalPanel();
hp.setHorizontalAlignment(HasHorizontalAlignment.ALIGN_RIGHT);
hp.setWidth(200);
hp.add(button);

frame.add(hp);
frame.setSize(200,100);
frame.setVisible(true);

你可能想试试这样的东西

Frame frame=new Frame("Button Frame");

Button button = new Button("Submit"); 

HorizontalPanel hp = new HorizontalPanel();
hp.setHorizontalAlignment(HasHorizontalAlignment.ALIGN_RIGHT);
hp.setWidth(200);
hp.add(button);

frame.add(hp);
frame.setSize(200,100);
frame.setVisible(true);

问题是您告诉框架使用FlowLayout,但希望它理解BorderLayout参数。只需在每个帧之间设置布局即可。setLayout(newborderlayout());问题是你告诉你的框架使用FlowLayout,但希望它理解BorderLayout参数。只需在每个帧之间设置布局即可。setLayout(newborderlayout());它应该可以很好地工作。这也可以用于盒子布局吗?还是完全不同?重新。定位?可以,但不是那么简单;可以在添加组件之前添加水平胶水,将其粘贴到右侧而不是左侧。布局管理器都以不同的方式处理第二个方法参数
BorderLayout.EAST
无需将对象粘贴在FlowLayout、BoxLayout或任何其他非预期布局的右侧。很抱歉,这是一个痛苦的问题,但只是另一个问题-我需要将此Jbutton放置在两个JTextField的末尾,但它只是将其放置在一个JTextField下。。如果你明白的话?有什么建议吗?感谢使用多个JPanel并将它们相互添加。或者使用GUI布局设计器为您生成代码。这是否也适用于方框布局?还是完全不同?重新。定位?可以,但不是那么简单;可以在添加组件之前添加水平胶水,将其粘贴到右侧而不是左侧。布局管理器都以不同的方式处理第二个方法参数
BorderLayout.EAST
无需将对象粘贴在FlowLayout、BoxLayout或任何其他非预期布局的右侧。很抱歉,这是一个痛苦的问题,但只是另一个问题-我需要将此Jbutton放置在两个JTextField的末尾,但它只是将其放置在一个JTextField下。。如果你明白的话?有什么建议吗?感谢使用多个JPanel并将它们相互添加。或者使用GUI布局设计器为您生成代码。