文本组件包括单行文本框、密码文本框、多行文本框(文本域)
单行文本框:JTextField
方法 TextField tf = new TextField(int columns) columns表示列数
setFocusable(boolean flag):false的话表示不能被选中,也不能被复制
密码文本框:JPasswordField
方法:
public char setEchoChar():设置回显的字符,默认为*
public char getEchoChar():得到回显的字符
public char[] getPassword():得到此文本框的所有内容
多行文本框(文本域):TextArea
方法:
TextArea ta = new TextArea(int rows,int columns) rows表示行数,columns表示列数
设置让光标可见:Frame.requestFocus()
把文本框的值转移到文本域案例 代码
package cn.idcast2;
import java.awt.Button;
import java.awt.FlowLayout;
import java.awt.Frame;
import java.awt.TextArea;
import java.awt.TextField;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
public class FrameDemo {
public static void main(String[] args) {
// 设置窗体
Frame f = new Frame("数据转移");
// 设置窗体大小
f.setBounds(400, 200, 400, 300);
// 设置窗体流向
f.setLayout(new FlowLayout());
// 设置文本框
final TextField tf = new TextField(20);
// 设置按钮
Button b = new Button("数据转移");
// 设置文本域
final TextArea ta = new TextArea(10, 40);
f.add(tf);
f.add(b);
f.add(ta);
// 表示点击按钮以后将会发生的事情
b.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
// 获取文本框的内容,trim表示防止出现空格
String tf2 = tf.getText().trim();
// 表示获取完毕以后清空文本框的内容
tf.setText("");
// 表示获取光标,即鼠标自动点击文本框
tf.requestFocus();
// 把文本框的内容添加到文本域,并换行
ta.append(tf2 + "\r\n");
}
});
// 关闭窗体
f.addWindowListener(new WindowAdapter() {
@Override
public void windowClosing(WindowEvent e) {
// TODO Auto-generated method stub
System.exit(0);
}
});
// 让窗体可见
f.setVisible(true);
}
}
显示结果