Java Swing中的文本框(JTextField)与文本区(JTextArea)使用实例
作者:junjie 发布时间:2022-08-15 00:17:46
一:JTextField的(文本框)使用:
JTextField 是一个轻量级组件,它允许编辑单行文本。
1.JTextField的常用构造方法:
JTextField() 构造一个新的 TextField。
JTextField(int columns) 构造一个具有指定列数的新的空 TextField。
JTextField(String text) 构造一个用指定文本初始化的新TextField。
JTextField(String text, int columns) 构造一个用指定文本和列初始化的新TextField。
2.JTextField的常用方法:
SetText(string) 设置文本域中的文本值
GetText()返回文本域中的输入文本值
getColumns()返回文本域的列数
setEditable(Boolean) 设置文本域是否为只读状态
3.JTextField的使用示例:
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class JTextFieldDemo1 {
JFrame jf;
JPanel jp;
JTextField jtf1,jtf2,jtf3,jtf4;
public JTextFieldDemo1() {
jf = new JFrame("TextField案例");
Container contentPane = jf.getContentPane();
contentPane.setLayout(new BorderLayout());
jp = new JPanel();
jtf1 = new JTextField();
jtf2 = new JTextField(10);
jtf3 = new JTextField("指定文本内容");
jtf4 = new JTextField("指定内容+指定长度(只读状态)",30);
jtf3.setEnabled(false);
jtf4.setFont(new Font("谐体",Font.BOLD|Font.ITALIC,16));
//设置文本的水平对齐方式
jtf4.setHorizontalAlignment(JTextField.CENTER);
jp.add(jtf1);
jp.add(jtf2);
jp.add(jtf3);
jp.add(jtf4);
contentPane.add(jp);
jf.pack();
jf.setLocation(400, 200);
jf.setVisible(true);
jf.addWindowListener(new WindowAdapter() {
public void windowClosing(WindowEvent e) {
System.exit(0);
}
});
}
public static void main(String[] args) {
new JTextFieldDemo1();
}
}
效果图:
二:JTextArea(文本区)的使用:
1.JTextArea的常用构造方法:
JTextArea() 构造新的 TextArea。
JTextArea(String text) 构造显示指定文本的新的 TextArea。
JTextArea(int rows, int columns) 构造具有指定行数和列数的新的空 TextArea。
JTextArea(String text, int rows, int columns) 构造具有指定文本、行数和列数的新的 TextArea。
使用示例:
JTextArea t1 = new JTextArea();
JTextArea t2 = new JTextArea(2, 8);
JTextArea t3 = new JTextArea("JTextArea3");
JTextArea t4 = new JTextArea("JTextArea4", 5, 10);
2.JTextArea的常用方法:
使用示例:
t1.setText("JTextArea1");// setText()设置文本显示的内容
t2.append("JTextArea2");// append()方法会将给定文本追加到文档结尾。
t4.setLineWrap(true);// 设置文本区的换行策略。
t4.setFont(new Font("标楷体", Font.BOLD, 16)); //设置当前字体。
t4.setTabSize(2);//使用setTabSize()方法设置[Tab]键的跳离距离
将JTextArea放入JScrollPane中,这样就能利用滚动的效果看到输入超过JTextArea高度的文字.
3.JTextArea使用的案例:
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
//实现接口ActionListener
public class JTextAreaDemo3 implements ActionListener {
JFrame jf;
JPanel jpanel;
JButton jb1, jb2, jb3;
JTextArea jta = null;
JScrollPane jscrollPane;
public JTextAreaDemo3() {
jf = new JFrame("JTextArea案例3");
Container contentPane = jf.getContentPane();
contentPane.setLayout(new BorderLayout());
jta = new JTextArea(10, 15);
jta.setTabSize(4);
jta.setFont(new Font("标楷体", Font.BOLD, 16));
jta.setLineWrap(true);// 激活自动换行功能
jta.setWrapStyleWord(true);// 激活断行不断字功能
jta.setBackground(Color.pink);
jscrollPane = new JScrollPane(jta);
jpanel = new JPanel();
jpanel.setLayout(new GridLayout(1, 3));
jb1 = new JButton("复制");
jb1.addActionListener(this);
jb2 = new JButton("粘贴");
jb2.addActionListener(this);
jb3 = new JButton("剪切");
jb3.addActionListener(this);
jpanel.add(jb1);
jpanel.add(jb2);
jpanel.add(jb3);
contentPane.add(jscrollPane, BorderLayout.CENTER);
contentPane.add(jpanel, BorderLayout.SOUTH);
jf.setSize(400, 300);
jf.setLocation(400, 200);
jf.setVisible(true);
jf.addWindowListener(new WindowAdapter() {
public void windowClosing(WindowEvent e) {
System.exit(0);
}
});
}
// 覆盖接口ActionListener的方法actionPerformed
public void actionPerformed(ActionEvent e) {
if (e.getSource() == jb1) {
jta.copy();
} else if (e.getSource() == jb2) {
jta.paste();
} else if (e.getSource() == jb3) {
jta.cut();
}
}
public static void main(String[] args) {
new JTextAreaDemo3();
}
}
运行结果演示:


猜你喜欢
- import android.content.Context;import android.graphics.Canvas;import a
- 本文实例为大家分享了Android实现签名涂鸦手写板的具体代码,供大家参考,具体内容如下布局文件<?xml version="
- java API中提供了一个基于指针操作实现对文件随机访问操作的类,该类就是RandomAccessFile类,该类不同于其他很多基于流方式
- 实验环境hadoop版本:3.3.2jdk版本:1.8hadoop安装系统:ubuntu18.04编程环境:IDEA编程主机:windows
- 不少朋友自己下载了一个Android SDK,怎样在Android studio中默认的Android SDK路径呢?打开Android s
- 一、项目概述之前有不少粉丝私信我说,能不能用Android原生的语言开发一款在手机上运行的游戏呢?说实话,使用java语言直接开发游戏这个需
- 收费版本:Rainbow Brackets免费版本:Rainbow Brackets Lite介绍一款可以将 (圆括号) [方括号] {花括
- 背景由于前前前阵子写了个壳,得去了解类的加载流程,当时记了一些潦草的笔记。这几天把这些东西简单梳理了一下,本文分析的代码基于Android8
- 单例模式的介绍说到单例模式,大家第一反应应该就是——什么是单例模式?,从“单例”字面意思上理解为——一个类只有一个实例,所以单例模式也就是保
- 使用要点如下:1.利用ListAdapter(一般使用ArrayAdapter)为AutoCompleteTextView提供数据,若有需要
- 很多朋友在下载文件的时候,经常会发现网站提供了MD5校验码,其实这个MD5码的作用就是当你下载文件好了之后,拿你下载好的文件的MD5校验码,
- 什么是进程?电脑中时会有很多单独运行的程序,每个程序有一个独立的进程,而进程之间是相互独立存在的。比如下图中的QQ、酷狗播放器、电脑管家等等
- 我们今天不探讨框架层面的内容,暂且认为90%的框架不存在无法容忍的性能问题。在做系统调优的过程中,面对随处可见的invoke调用,我的内心其
- Java 日期转换涉及的核心类:Date类、SimpleDateFormat类、Calendar类一、 Date型与long型Date型转换
- Spring Boot 2.7.6整合redis与低版本的区别最近在写程序的时候参考了之前写过的一篇文章spring boot整合redis
- 在我们实际开发项目中,经常会遇到一些常量的配置,比如url,暂时不会改变的字段参数,这个时候我们最好是不要直接写死在代码里的,因为这样编写的
- 本文实例讲述了C#计算程序执行过程花费时间的方法。分享给大家供大家参考。具体如下:计算执行完程序花费的时间:void AddInfo(){
- 在实际的项目开发过中,当我们修改了某个java类文件时,需要手动重新编译、然后重新启动程序的,整个过程比较麻烦,特别是项目启动慢的时候,更是
- 本文实例讲述了Java字符流与字节流区别与用法。分享给大家供大家参考,具体如下:字节流与字符流主要的区别是他们的的处理方式流分类:1.Jav
- 本文以实例形式较为全面的讲述了C++的多重继承与虚继承,是大家深入学习C++面向对象程序设计所必须要掌握的知识点,具体内容如下:一、多重继承