检查是否选择了JTextfield - java

是否可以检查是否已选择/取消选择了jtextfield(即,已单击文本字段并且光标现在位于该字段内)?

//编辑
感谢下面的帮助,这里是一个有效的示例

import java.awt.event.FocusEvent;
import java.awt.event.FocusListener;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.JTextField;

@SuppressWarnings("serial")
public class test extends JFrame {

private static JPanel panel = new JPanel();
private static JTextField textField = new JTextField(20);
private static JTextField textField2 = new JTextField(20);

public test() {
    panel.add(textField);
    panel.add(textField2);
    this.add(panel);
}

public static void main(String args[]) {

    test frame = new test();
    frame.setVisible(true);
    frame.setSize(500, 300);
    frame.setLocationRelativeTo(null);
    frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

    textField.addFocusListener(new FocusListener() {

        @Override
        public void focusGained(FocusEvent e) {
            System.out.println("selected");
        }

        @Override
        public void focusLost(FocusEvent e) {
            System.out.println("de-selected");
        }
    });
    }
}

参考方案

您将需要使用focusGainedfocusLost事件来查看何时选择了它,以及何时取消选择了它(即获得焦点/失去焦点)。

import java.awt.event.FocusEvent;
import java.awt.event.FocusListener;

import javax.swing.JTextField;

public class Main {

    public static void main(String args[]) {
        final JTextField textField = new JTextField();
        textField.addFocusListener(new FocusListener() {

            @Override
            public void focusGained(FocusEvent e) {
                //Your code here
            }

            @Override
            public void focusLost(FocusEvent e) {
                //Your code here
            }
        });

    }
}

Java Swing SearchBox模型 - java

我需要使用Java Swing的搜索框,如果单击任何建议,当输入字母时它将显示来自数据库的建议,它将执行一些操作。如果有可能在Java swing中,请提供源代码提前致谢 java大神给出的解决方案 您可以使用DefaultComboBoxModel,输出将是这样。Try this在此代码中,您将找到countries数组,因此您需要从数据库中获取此数组。

Java-如何使Jtextfield充满整个框架 - java

我正在尝试使JTextArea填充整个框架,因此它看起来有点像记事本或textedit。也可以有一个滚动窗格。提前致谢!编辑:JTextArea 参考方案 试试这个 - -import java.awt.BorderLayout; import javax.swing.JFrame; import javax.swing.JTextField; public…

Swing-典型桌面应用程序中的并发 - java

这可能是一个广泛的问题,但我想知道单用户桌面应用程序通常在何处使用并发。您如何发现理想情况下(在设计阶段)并发问题?附注:从操作系统理论上来说,并发问题通常发生在无法共享资源(例如打印机)的情况下。不过,我仍然对在编程级别上可能发生的情况感到迷惑。 java大神给出的解决方案 Event Dispatch thread与其他逻辑之间的Swing中可能存在线程…

如何获取JTextField中的字符数? - java

是否有关于如何计算JTextField中输入字符的事件? 参考方案 您可以使用从JTextComponent继承的方法getText()检索字段的当前字符串值(取决于您的上下文,为NullPointerExceptions做准备)。然后您可以询问该字符串以获取字符数;使用String.length()返回该字符串中Unicode代码点的数量。如果您有兴趣计算…

Java:线程池如何将线程映射到可运行对象 - java

试图绕过Java并发问题,并且很难理解线程池,线程以及它们正在执行的可运行“任务”之间的关系。如果我创建一个有10个线程的线程池,那么我是否必须将相同的任务传递给池中的每个线程,或者池化的线程实际上只是与任务无关的“工人无人机”可用于执行任何任务?无论哪种方式,Executor / ExecutorService如何将正确的任务分配给正确的线程? 参考方案 …