选择一个文本字段,然后单击一个按钮以在 Java 中向其发送文本

我有两个文本字段和 1 个按钮。我希望程序运行,以便我先单击文本字段,然后单击按钮,按钮会向活动/选定的文本字段发送一个文本“1”。有没有办法实现这一目标?非常感谢。


千万里不及你
浏览 113回答 1
1回答

江户川乱折腾

有很多方法可以做你想要的,所以这里只是其中之一:您需要为每个文本字段添加一个动作侦听器,并让它们设置一个公共变量(对文本字段的引用),以便您的代码知道最后选择哪个文本字段。然后,当您单击按钮时,您可以简单地使用该变量来了解选择了哪个文本字段并在末尾添加 1,或者执行您想做的任何其他操作,只需编辑事件即可。示例代码://Value to keep track of the last selected text fieldpublic static JTextField lastClicked;private static javax.swing.JButton jButton1;private static javax.swing.JTextField jTextField1;private static javax.swing.JTextField jTextField2;public static void main(String args[]){    //Create and display the form    java.awt.EventQueue.invokeLater(new Runnable()    {        public void run()        {            //Setup all the components            jButton1 = new javax.swing.JButton("Click Me");            jTextField1 = new javax.swing.JTextField("One");            jTextField2 = new javax.swing.JTextField("Two");            //Add listeners            jButton1.addActionListener(new java.awt.event.ActionListener()            {                public void actionPerformed(java.awt.event.ActionEvent evt)                {                    //Add a 1 to the last selected text field                    lastClicked.setText(lastClicked.getText() + "1");                }            });            jTextField1.addFocusListener(new java.awt.event.FocusAdapter()            {                public void focusGained(java.awt.event.FocusEvent evt)                {                    //change the selected text field to this one                    lastClicked = (JTextField) evt.getSource();                }            });            jTextField2.addFocusListener(new java.awt.event.FocusAdapter()            {                public void focusGained(java.awt.event.FocusEvent evt)                {                    //change the selected text field to this one                    lastClicked = (JTextField) evt.getSource();                }            });        }    });}请注意,在此示例中,我们将事件源强制转换为文本字段lastClicked = (JTextField) evt.getSource(),因此这仅适用于文本字段。如果要使用其他组件,则应使用整数或对象作为变量类型。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java