在程序启动时激活JTextArea?

时间:2018-03-18 11:22:22

标签: java swing click jtextarea

是否可以以某种方式制作JTextArea,当用户在程序启动时开始输入时,它会自动开始输入该JTextArea。通常,用户首先必须单击JTextArea才能开始输入它?

我是否可以让用户不必单击JTextArea来开始输入它?

编辑:我尝试过使用:

textField.requestFocusInWindow();

在我的框架类中,但是没有用。

1 个答案:

答案 0 :(得分:1)

这称为获得焦点,可以使用您的代码进行配置。有些samples使用听众在适当的时候更改JTextArea

方法.requestFocusInWindow();可能会在下面的代码中解决您的问题:

tabbedPane.addChangeListener(e -> {
  Component comp = tabbedPane.getSelectedComponent();
  if (comp.equals(pnlFoo)) {
    txtFoo.requestFocusInWindow();
  } else if (comp.equals(pnlBar)) {
    txtBar.requestFocusInWindow();
  }
});

类似问题:Java - how do I gain focus on JTextArea when selecting a new JTabbedPane

这可能有助于您的第一次运行:

frame.addWindowFocusListener(new WindowAdapter() {
                    public void windowGainedFocus(WindowEvent e) {
                        textArea_1.requestFocusInWindow();