Java gui如何获取文本框的大小

时间:2013-03-25 02:47:05

标签: java swing user-interface jframe

嗨伙计们/女孩我正在尝试制作一个用户输入数字的方框。现在我已经创建了一个文本字段但是如何更改文本字段的大小。

这是我到目前为止所得到的

public class example extends JFrame {
    private JTextField example1;

   example() {    
        box1 = new JTextField(10);
        add(example1);

现在它只是iam尝试2得到像方形大小的文本字段,这将允许用户在那里写一个数字。它将是一个数字。任何帮助都会很棒。谢谢

2 个答案:

答案 0 :(得分:4)

你说:

  我试图制作一个caluclater。所以我用这个盒子拿一个号码。

我所知道的大多数计算器都没有用于显示当前数字的小字段,而是具有覆盖GUI顶部整个宽度的文本组件,而使用Java Swing实现此目的的关键是使用正确的布局管理器和正确放置组件。例如,这个GUI设计可以通过使用一个使用BorderLayout的容器来解决,并将你的显示JTextField(不是JTextArea)放在BorderLayout.PAGE_START位置,另一个JPanel中的按钮保存在主容器的BorderLayout.CENTER位置。

例如,请查看我的回答here中的代码。它创建一个如下所示的GUI:enter image description here。这显示了两个计算器,它们只根据所选字体的大小而有所不同。

关键代码是:

  textField.setFont(textField.getFont().deriveFont(BTN_FONT_SIZE));

  mainPanel.setLayout(new BorderLayout(gap, gap));
  mainPanel.setBorder(BorderFactory.createEmptyBorder(gap, gap, gap, gap));
  mainPanel.add(textField, BorderLayout.PAGE_START);
  mainPanel.add(buttonPanel, BorderLayout.CENTER);

答案 1 :(得分:1)

JTextField使用字符数(列数)而不是像素大小。如果您要查找可以指定大小的文本框,请使用JTextArea