当前位置: 首页 > 知识库问答 >
问题:

使用JTextField和BoxLayout进行Swing

汪安然
2023-03-14
JTextField area2 = new JTextField();
JTextField searchtext=new JTextField();
JPanel mainframe = new JPanel();
JButton searchbutton=new JButton("Submit");
JButton registerbutton=new JButton("Login/Register");

mainframe.setLayout(new BoxLayout(mainframe, BoxLayout.Y_AXIS));
JPanel p1 = new JPanel();
JPanel p2 = new JPanel();
JPanel p3 = new JPanel();
JPanel p4 = new JPanel();

p1.setLayout(new BoxLayout(p1, BoxLayout.X_AXIS)); 
p2.setLayout(new BoxLayout(p2, BoxLayout.X_AXIS));
p4.setLayout(new BoxLayout(p4, BoxLayout.X_AXIS));
p1.setBorder(BorderFactory.createTitledBorder("FLIGHT LISTINGS"));
p2.setBorder(BorderFactory.createTitledBorder("SEARCH"));
p3.setLayout(new BoxLayout(p3, BoxLayout.X_AXIS)); 
p3.setBorder(BorderFactory.createTitledBorder("User Account"));
p3.add(registerbutton);
p2.add(searchtext);
p2.add(searchbutton);

ImageIcon icon = new ImageIcon("map.jpg"); 
JLabel thumb = new JLabel();
thumb.setIcon(icon);
p4.add(thumb);

mainframe.add(p3);
mainframe.add(p4);
mainframe.add(p2);
mainframe.add(p1);
this.add(mainframe);

这是毁灭性的结果:http://imgur.com/xcudefm

共有1个答案

井翰
2023-03-14
mainframe.setLayout(new BoxLayout(mainframe, BoxLayout.Y_AXIS));

BoxLayout将根据框架中的可用空间增长组件。因此,如果您的文本字段增长到不合理的大小,这意味着您正在使用:

frame.setSize(...);

并且给框架设置了一些不适合添加到框架中的组件的随机大小。

相反,您应该使用:

frame.pack();
 类似资料:
  • 问题内容: 我在JTextfield上输入了一个名称,但是我的表没有过滤任何东西! 我的代码: 问题答案: 您正在呼叫的 构造。它应该如何从filterTF中读取 文本 。我认为您应该从分配给的Action Event Listener调用它,提交(单击)文本时将调用它,如下所示: 如果要使用“根据用户键类型进行过滤”事件,请将键侦听器添加到您要输入过滤字符串的文本字段中。 但是,正如下面的注释所

  • 问题内容: 我有一个JTextField(JT)在我尽快要按照用户类型,例如在里面,这个词被自动JTextField中写入。 我使用代码: 但这会在按下e时给出!有任何想法吗?非常感谢 问题答案: 不要在文本组件上使用,存在一系列问题(未通知,突变异常,当用户将某些内容粘贴到字段时未通知),相反,您应该使用 例如…

  • 我正在使用DataTables,并将这个有点尴尬的Javascript拼凑在一起,以允许行和列高亮显示。它基于本页的示例(http://datatables.net/release-datatables/examples/api/highlight.html ). 下面是dataTable配置的相关部分: 服务器上的模板代码插入了一些常量。这是列数。以下是DataTables调试输出:http:/

  • 我在一个从上到下的boxLayout中有三个组件(JLabel、JTextField、JButton)。问题是,当我为标签设置X对齐方式时,它看起来好像我已经改变了按钮的X对齐方式,反之亦然,只有当两者的对齐方式相同时,它才能正常工作。 下面是我的代码:

  • 主要内容:1 Java BoxLayout的介绍,2 Java BoxLayout的字段,3 Java BoxLayout的构造方法,4 Java BoxLayout的案例1 Java BoxLayout的介绍 BoxLayout用于垂直或水平排列组件。 2 Java BoxLayout的字段 public static final int X_AXIS public static final int Y_AXIS public static final int LINE_AXIS public

  • 问题内容: 当我尝试向服务器上的API发送POST请求时遇到问题,我遵循了许多不同的教程,但仍然无法正常工作。我知道我的问题出在POST请求上,但我解决不了!所以这是我在Swift中的代码以及我在php中的API :(是的,我已经用代码中的真实ID替换了xxxx) 总结一下,服务器接收到请求,例如,如果我手动输入一个伪指令,它就可以工作,实际上是POST方法不起作用。。服务器未接收到POST参数