
Java Swing JTextArea:文本域组件
发布日期:2021-05-07 20:58:30
浏览次数:20
分类:精选文章
本文共 1748 字,大约阅读时间需要 5 分钟。
1 JTextArea(文本域组件)
文本域与文本框的最大区别就是文本域允许用户输入多行文本信息。在 Swing 中使用 JTextArea 类实现一个文本域。
1.1 构造方法
JTextArea():创建一个默认的文本域。JTextArea(int rows,int columns):创建一个具有指定行数和列数的文本域。JTextArea(String text):创建一个包含指定文本的文本域。JTextArea(String text,int rows,int columns):创建一个既包含指定文本,又包含指定行数和列数的多行文本域。
1.2 常用方法
void append(String str) 将字符串 str 添加到文本域的最后位置void setColumns(int columns) 设置文本域的行数void setRows(int rows) 设置文本域的列数int getColumns() 获取文本域的行数void setLineWrap(boolean wrap) 设置文本域的换行策略int getRows() 获取文本域的列数void insert(String str,int position) 插入指定的字符串到文本域的指定位置void replaceRange(String str,int start,int end) 将指定的开始位 start 与结束位 end 之间的字符串用指定的字符串 str 取代
1.3 示例
使用 JFrame 组件创建一个窗口,再向窗口中添加一个文本域,并将文本域中的文本设置为自动换行,允许显示滚动条。
代码中将 JTextArea 文本域放入滚动窗口中,并通过 getPreferredSize() 方法获得文本域的显示大小。将滚动窗口的大小设置成与文本域大小相同,再将滚动窗口添加到 JPanel 面板中。运行程序,在文本域中可以输入多行内容,当内容超出文本域高度时会显示滚动条。
import javax.swing.*;import java.awt.*;public class JTextAreaDemo { public static void main(String[] agrs) { JFrame frame=new JFrame("Java文本域组件示例"); //创建Frame窗口 JPanel jp=new JPanel(); //创建一个JPanel对象 JTextArea jta=new JTextArea("请输入内容",7,30); jta.setLineWrap(true); //设置文本域中的文本为自动换行 jta.setForeground(Color.BLACK); //设置组件的背景色 jta.setFont(new Font("楷体",Font.BOLD,16)); //修改字体样式 jta.setBackground(Color.YELLOW); //设置按钮背景色 JScrollPane jsp=new JScrollPane(jta); //将文本域放入滚动窗口 Dimension size=jta.getPreferredSize(); //获得文本域的首选大小 jsp.setBounds(110,90,size.width,size.height); jp.add(jsp); //将JScrollPane添加到JPanel容器中 frame.add(jp); //将JPanel容器添加到JFrame容器中 frame.setBackground(Color.LIGHT_GRAY); frame.setSize(400,200); //设置JFrame容器的大小 frame.setVisible(true); }}
1.4 运行效果
发表评论
最新留言
感谢大佬
[***.8.128.20]2025年05月04日 04时42分26秒
关于作者

喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
HashMap类、HashSet
2019-03-11
HashTable类
2019-03-11
TreeSet、TreeMap
2019-03-11
JVM内存模型
2019-03-11
可变长度参数
2019-03-11
堆空间常用参数总结
2019-03-11
3、条件查询
2019-03-11
cordova打包apk更改图标
2019-03-11
GitHub上传时,项目在已有文档时直接push出现错误解决方案
2019-03-11
页面置换算法
2019-03-11
文件系统的层次结构
2019-03-11
减少磁盘延迟时间的方法
2019-03-11
vue(渐进式前端框架)
2019-03-11
权值初始化和与损失函数
2019-03-11
vscode设置eslint保存文件时自动修复eslint错误
2019-03-11
最大半连通子图
2019-03-11
Remove Extra one 维护前缀最大最小值
2019-03-11
GitHub完整记录数据库GHTorrent的下载和安装经验
2019-03-11
Android进阶解密读书笔记2——第2章:Android系统启动——第1、2小节
2019-03-11
Gradle实战四:Jenkins持续集成
2019-03-11