回 帖 发 新 帖 刷新版面

主题:如何从一个输入文本框中用一句语句获取一个字母???

就是我在一个面板上利用JBuilder组键JTextFiled,在其中一个输入文本框用来输入字母,然后通过语句获取字母并在另一个 JTextFiled输出。请问这个在用什么语句来实现。

回复列表 (共5个回复)

沙发

final JTextField f1 = new JTextField(), f2 = new JTextField();
f1.addActionListener(new ActionListener() {
  public void actionPerformed(ActionEvent e) {
    f2.setText(f1.getText() + "F2");
  }
});

JFrame f = new JFrame();
f.add(f1, BorderLayout.NORTH);
f.add(f2, BorderLayout.SOUTH);
f.pack();
f.setVisible(true);
然后你试试在上面FIELD里面输入东西按回车吧.

板凳

import java.awt.*;
import java.awt.event.*;

public class Test
{
    public static void main(String[] args)
    {
        Frame frm=new Frame();
        final TextArea ta=new TextArea();
        final TextArea tb=new TextArea();
        
        frm.add(ta,BorderLayout.NORTH);
        frm.add(tb,BorderLayout.SOUTH);
        
        ta.addKeyListener(new KeyAdapter() 
        {
          public void keyTyped(KeyEvent e) {
            tb.append(String.valueOf(e.getKeyChar()));
      }
        });

        frm.pack();
        frm.setVisible(true);

    }
}

3 楼

你如果要获取文本直接用JTextArea的成员函数getText()就可以了

4 楼

import java.awt.event.KeyEvent;
import java.awt.event.KeyListener;
import javax.swing.*;
class Demo extends JFrame implements KeyListener
{
    private JTextField tf1 = new JTextField();
    private JTextField tf2 = new JTextField();
    public Demo()
    {
        this.getContentPane().add(tf1,"North");
        this.getContentPane().add(tf2,"South");
        tf1.addKeyListener(this);
        tf2.addKeyListener(this);
        this.pack();
        this.setResizable(false);
        this.setVisible(true);
    }
    
    public static void main(String[]args)
    {
        new Demo();
    }
    
    public void keyTyped(KeyEvent e)
    {
        
    }
    
    public void keyReleased(KeyEvent e)
    {
        tf2.setText(tf1.getText());
    }
    
    public void keyPressed(KeyEvent e)
    {
        
    }
}

5 楼

查看JDK

我来回复

您尚未登录,请登录后再回复。点此登录或注册