是否可以以某种方式制作JTextArea
,当用户在程序启动时开始输入时,它会自动开始输入该JTextArea。通常,用户首先必须单击JTextArea才能开始输入它?
我是否可以让用户不必单击JTextArea来开始输入它?
编辑:我尝试过使用:
textField.requestFocusInWindow();
在我的框架类中,但是没有用。
答案 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();