Java Swing JTextArea文本区域的实现示例
1.概述
官方JavaDocsApi:javax.swing.JTextArea
JTextArea,文本区域。JTextArea用来编辑多行的文本。JTextArea除了允许多行编辑外,其他基本用法和JTextField基本一致。
JTextArea常用构造方法:
/** *参数说明: *text:默认显示的文本 *rows:默认可见的行数 *columns:默认可见的列数 * *默认由rows和columns决定首选大小 */ JTextArea() JTextArea(Stringtext) JTextArea(introws,intcolumns) JTextArea(Stringtext,introws,intcolumns)
JTextArea常用方法:
//是否自动换行,默认为false voidsetLineWrap(booleanwrap) //设置自动换行方式。如果为true,则将在单词边界(空白)处换行;如果为false,则将在字符边界处换行。默认为false。 voidsetWrapStyleWord(booleanword) //获取文本框中的文本 StringgetText() //追加文本到文档末尾 voidappend(Stringstr) //替换部分文本 voidreplaceRange(Stringstr,intstart,intend) //设置文本框的文本、字体和字体颜色 voidsetText(Stringtext) voidsetFont(Fontfont) voidsetForeground(Colorfg) //获取内容的行数(以换行符计算,满行自动换下一行不算增加行数) intgetLineCount() //获取指定行(行数从0开始)的行尾(包括换行符)在全文中的偏移量 intgetLineEndOffset(intline) //获取指定偏移量所在的行数(行数从0开始) intgetLineOfOffset(intoffset) //设置颜色,分别为:光标颜色、呈现选中部分的背景颜色、选中部分文本的颜色、不可用时文本的颜色 voidsetCaretColor(Colorc) voidsetSelectionColor(Colorc) voidsetSelectedTextColor(Colorc) voidsetDisabledTextColor(Colorc) //设置文本框是否可编辑 voidsetEditable(booleanb) /*下面方法定义在java.awt.Component基类中*/ //判断组件当前是否拥有焦点 booleanisFocusOwner() //设置组件是否可用 voidsetEnabled(booleanb)
JTextArea复制粘贴相关方法:
//设置光标开始位置,selectionStart>=0 voidsetSelectionStart(intselectionStart) //设置光标结束位置,selectionEnd>=selectionStart voidsetSelectionEnd(intselectionEnd) //复制选中部分文本 voidcopy() //剪切选中部分文本 voidcut() //粘贴文本到文本框 voidpaste()
JTextArea常用监听器:
//添加焦点事件监听器 voidaddFocusListener(FocusListenerlistener) //添加文本框内的文本改变监听器 textField.getDocument().addDocumentListener(DocumentListenerlistener) //添加按键监听器 voidaddKeyListener(KeyListenerlistener)
PS:JTextArea在使用时通常把它放到JScrollPane容器中来使用,以此来实现内容增多时可水平/垂直滚动的效果。
2.代码实例
packagecom.xiets.swing; importjavax.swing.*; importjava.awt.event.ActionEvent; importjava.awt.event.ActionListener; publicclassMain{ publicstaticvoidmain(String[]args){ JFramejf=newJFrame("测试窗口"); jf.setSize(250,250); jf.setLocationRelativeTo(null); jf.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE); JPanelpanel=newJPanel(); //创建一个5行10列的文本区域 finalJTextAreatextArea=newJTextArea(5,10); //设置自动换行 textArea.setLineWrap(true); //添加到内容面板 panel.add(textArea); //创建一个提交按钮,点击按钮获取输入文本 JButtonbtn=newJButton("提交"); btn.addActionListener(newActionListener(){ @Override publicvoidactionPerformed(ActionEvente){ System.out.println("提交:"+textArea.getText()); } }); panel.add(btn); jf.setContentPane(panel); jf.setVisible(true); } }
结果展示:
输入内容,点击按钮,查看控制台输出。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持毛票票。
声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:czq8825#qq.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。