我想将焦点放在作为对象消息传递给JOptionPane的特定JTextField上。这是我的代码(我希望焦点在txt2上,但焦点始终在txt1上):
import java.awt.*;
import java.util.*;
import javax.swing.*;
public class TextArea extends JPanel
{
private JTextArea txt1 = new JTextArea();
private JTextArea txt2 = new JTextArea();
public TextArea()
{
setLayout(null);
setPreferredSize(new Dimension(200,100));
txt1.setBounds (20, 20, 220, 20);
txt2.setBounds (20, 45, 220, 20);
txt1.setText("Text Field #1");
txt2.setText("Text Field #2");
add(txt1);
add(txt2);
txt2.requestFocus();
}
private void display()
{
Object[] options = {this};
JOptionPane pane = new JOptionPane();
pane.showOptionDialog(null, null, "Title", JOptionPane.DEFAULT_OPTION, JOptionPane.PLAIN_MESSAGE, null, options, txt2);
}
public static void main(String[] args)
{
new TextArea().display();
}
}
txt2
一旦覆盖,您可以让组件请求焦点addNotify
。像这样:
private JTextArea txt2 = new JTextArea() {
public void addNotify() {
super.addNotify();
requestFocus();
}
};
这是程序的完整功能/经过测试的版本:
import java.awt.Dimension;
import javax.swing.*;
public class Test extends JPanel {
private JTextArea txt1 = new JTextArea();
private JTextArea txt2 = new JTextArea() {
public void addNotify() {
super.addNotify();
requestFocus();
}
};
public Test() {
setLayout(null);
setPreferredSize(new Dimension(200, 100));
txt1.setBounds(20, 20, 220, 20);
txt2.setBounds(20, 45, 220, 20);
txt1.setText("Text Field #1");
txt2.setText("Text Field #2");
add(txt1);
add(txt2);
}
private void display() {
Object[] options = { this };
JOptionPane pane = new JOptionPane();
pane.showOptionDialog(null, null, "Title", JOptionPane.DEFAULT_OPTION,
JOptionPane.PLAIN_MESSAGE, null, options, txt2);
}
public static void main(String[] args) {
new Test().display();
}
}
问题内容: 我让我的游戏在没有鼠标的情况下运行,因此不能使用指针。当玩家输球时将显示高分菜单。 这是我的代码 我努力了 但仍然没有专注于我的。 如何聚焦呢? 问题答案: 如果希望在GUI显示时集中精力,可以使用以下方法: 哪里会是你和你的。
在我的Java Swing应用程序中,我有多个用于日期的JTextField,单击时会有一个JButton,它会打开日历来选择日期,并且日期字符串应该插入其中一个JTextField,所以我想设计程序,让用户先点击一个日期JTextField,他想输入一个日期[关注该字段并记住它],程序将JTextField保存为目标组件,然后将该组件传递给calendar对象以输入拾取的日期。到目前为止,我可以
我有一个EditText-Field,并为它设置了一个OnFocusChangeListener。当它失去焦点时,将调用一个方法,该方法用数据库中的EditText检查EditText的值。如果方法的return-value为true,则显示一个toast并且焦点应该再次回到EditText上。焦点应该总是回到EditText上,键盘应该显示,直到方法的return-value为false。 ed
如何在Elm中设置Html元素的焦点?我试图在元素上设置自动聚焦属性,它只在页面加载上设置焦点。
当我的应用程序加载时,它是使用netbean制作的,第一个JTextField会自动聚焦,在这个JTextField中,我写了“输入您的用户名”,当用户点击这个字段时它会消失,但是当应用程序加载时,这个字段是聚焦的,意味着我看不到“输入您的用户名”,如何在启动时取消聚焦?
是否可以将焦点从更改为? 我尝试了以下方法: 但它不起作用。按Tab键或Enter键时,光标消失。