JTextArea自动换行以及设置滚动条
应将JTextArea置于JScrollPanel中
若要使只有垂直滚动条而没有水平滚动条,使用JTextArea.setLineWrap(true),自动换行。
文本换行代码片段如下:
JTextArea adressTextArea = new JTextArea(11, 35);
//设置自动换行
adressTextArea.setLineWrap(true);
//定义带滚动条的panel,并将JTextArea存入到panel中,使textarea具有滚动条显示功能。
JScrollPane scrollpane = new JScrollPane(adressTextArea);
//取消显示水平滚动条
scrollpane.setHorizontalScrollBarPolicy(JScrollPane.HORIZONTAL_SCROLLBAR_NEVER);
//显示垂直滚动条
scrollpane.setVerticalScrollBarPolicy(JScrollPane.VERTICAL_SCROLLBAR_AS_NEEDED); 以下为个人测试画的一个简单页面,仅供参考:
package JFrameTest; import java.awt.BorderLayout; @SuppressWarnings("all")
public class ApplyCertTest extends JFrame { private JPanel contentPane; /**
* Launch the application.
*/
public static void main(String[] args) {
EventQueue.invokeLater(new Runnable() {
public void run() {
try {
ApplyCertTest frame = new ApplyCertTest();
frame.setVisible(true);
frame.setTitle("申请新许可");
frame.getContentPane().setLayout(null);
} catch (Exception e) {
e.printStackTrace();
}
}
});
} /**
* Create the frame.
*/
public ApplyCertTest() {
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
//setResizable决定了窗体是否可以放大。true则可以最大化,false则不可变
setResizable(false);
setBounds(100, 100, 510, 520);
contentPane = new JPanel();
contentPane.setLayout(new FlowLayout(FlowLayout.LEFT)); getContentPane().add(contentPane, BorderLayout.NORTH); JLabel lblNewLabel = new JLabel(" 生成新的许可需填写下列信息:");
lblNewLabel.setLabelFor(contentPane);
contentPane.add(lblNewLabel); JPanel lPanel = new JPanel();
lPanel.setBorder (BorderFactory.createTitledBorder ("申请文件信息"));
lPanel.setLayout(new BorderLayout(5, 0));
getContentPane().add(lPanel); //用户名称
JPanel mlPanel = new JPanel();
mlPanel.setLayout(new FlowLayout(FlowLayout.LEFT));
JLabel userName = new JLabel("用户名称: ");
mlPanel.add(userName);
JTextField userTextField = new JTextField(35);
mlPanel.add(userTextField); //公司名称
mlPanel.setLayout(new FlowLayout(FlowLayout.LEFT));
JLabel companyName = new JLabel("公司名称: ");
mlPanel.add(companyName);
JTextField companyTextField = new JTextField(35);
mlPanel.add(companyTextField);
lPanel.add(mlPanel); //电话号码
mlPanel.setLayout(new FlowLayout(FlowLayout.LEFT));
JLabel phone = new JLabel("电话号码: ");
mlPanel.add(phone);
JTextField phoneTextField = new JTextField(35);
mlPanel.add(phoneTextField);
lPanel.add(mlPanel); //电子邮件
mlPanel.setLayout(new FlowLayout(FlowLayout.LEFT));
JLabel email = new JLabel("电子邮件: ");
mlPanel.add(email);
JTextField emailTextField = new JTextField(35);
mlPanel.add(emailTextField);
lPanel.add(mlPanel); //联系地址
mlPanel.setLayout(new FlowLayout(FlowLayout.LEFT));
JLabel adress = new JLabel("联系地址: ");
mlPanel.add(adress);
//JTextField adressTextField = new JTextField(35);
JTextArea adressTextArea = new JTextArea(11, 35);
//设置自动换行
adressTextArea.setLineWrap(true);
//定义带滚动条的panel,并将JTextArea存入到panel中,使textarea具有滚动条显示功能。
JScrollPane scrollpane = new JScrollPane(adressTextArea);
//取消显示水平滚动条
scrollpane.setHorizontalScrollBarPolicy(JScrollPane.HORIZONTAL_SCROLLBAR_NEVER);
//显示垂直滚动条
scrollpane.setVerticalScrollBarPolicy(JScrollPane.VERTICAL_SCROLLBAR_AS_NEEDED);
mlPanel.add(scrollpane);
lPanel.add(mlPanel); //适用IP
mlPanel.setLayout(new FlowLayout(FlowLayout.LEFT));
JLabel ipLabel = new JLabel("适用IP: ");
mlPanel.add(ipLabel);
JTextField ipTextField = new JTextField(35);
mlPanel.add(ipTextField);
lPanel.add(mlPanel); //适用mac地址
mlPanel.setLayout(new FlowLayout(FlowLayout.LEFT));
JLabel macLabel = new JLabel("适用mac地址:");
mlPanel.add(macLabel);
JTextField macTextField = new JTextField(35);
mlPanel.add(macTextField);
lPanel.add(mlPanel); //使用时限(天)
mlPanel.setLayout(new FlowLayout(FlowLayout.LEFT));
JLabel dayLimit = new JLabel("使用时限(天): ");
mlPanel.add(dayLimit);
JTextField dayLimitTextField = new JTextField(35);
mlPanel.add(dayLimitTextField);
lPanel.add(mlPanel); JPanel bPanel = new JPanel();
bPanel.setLayout(new FlowLayout(FlowLayout.RIGHT));
JButton saveButton = new JButton("保存");
JButton resetButton = new JButton("重置");
JButton quitButton = new JButton("退出");
bPanel.add(saveButton);
bPanel.add(resetButton);
bPanel.add(quitButton); getContentPane().add(bPanel, BorderLayout.SOUTH); }
}
JTextArea自动换行以及设置滚动条的更多相关文章
- MFC对话框程序EDIT类控件的自动换行,垂直滚动条自动下移
1.新建一个Edit Control,将其Multiline属性设置为True,Auto HScroll属性设置False,这样就可以实现每一行填满后自动换行了. 2.再将Vetrical Scr ...
- 【转】MFC编辑框自动换行,垂直滚动条自动下移
1.新建一个编辑框控件(Edit Control),将其多行(Multiline)前面打勾(属性设置为True),Auto HScroll前面的勾去掉(属性设置False),这样就可以实现每一行填满后 ...
- 【Visual Studio】MFC编辑框自动换行,垂直滚动条自动下移(转)
原文转自 http://blog.csdn.net/wu_lai_314/article/details/8317395 1.新建一个编辑框控件(Edit Control),将其多行(Multilin ...
- webkit浏览器css设置滚动条
主要有下面7个属性: ::-webkit-scrollbar 滚动条整体部分,可以设置宽度啥的 ::-webkit-scrollbar-button 滚动条两端的按钮 ::-webkit-scroll ...
- CSS设置滚动条样式
因为在现在的大部分项目中很多都用到了滚动条,有时候用到模拟的滚动条,现在说下滚动条的CSS也能解决. 比如网易邮箱的滚动条样子很好看,就是利用的CSS来设置的,而且是webkit浏览器的.如图所示: ...
- css设置滚动条颜色与样式以及如何去掉与隐藏滚动条
我们大家在浏览网页的时偶尔会看到很漂亮的各种颜色样式的滚动条,这就是通过css代码控制来实现的,于是本人搜集整理一番,这里和大家分享一下使用CSS设置滚动条颜色以及如何去掉滚动条的方法,需要的朋友可以 ...
- CSS设置滚动条样式[转]
原文转载地址:http://www.javascript100.com/?p=756 webkit浏览器css设置滚动条 主要有下面7个属性 ::-webkit-scrollbar 滚动条整体部分,可 ...
- 转载自前端开发:CSS设置滚动条样式
浏览器默认的滚动条样子太过屌丝了,得自己动手整整.记得IE浏览器有几个设置滚条的样式,不过比较鸡肋,只能设置颜色之类的,而且webkit下面也不支持.无意间看到网易邮箱的滚动条样子很好看,一开始以为是 ...
- easyui combobox 设置滚动条
设置滚动条: 1 panelHeight:200 :设置固定的高度. 2 panelHeight:'auto', panelMaxHeight:200. <input class=" ...
随机推荐
- CLR查找和加载程序集的方式(二) 流程图
在前一篇文章<CLR查找和加载程序集的方式(一)>中详细介绍了CLR查找和加载程序的方式,分别介绍了配置与代码的实现方式. 本篇通过一个具体的流程图来帮助大家更加直观明了深入的掌握CLR查 ...
- mysql编程---函数
(存储)函数: 函数,也说成"存储函数",其实就是js或php中所说的函数! 唯一的区别: 这里的函数必须返回一个数据(值): 定义形式: 注意事项: 1, 在函数内容,可以有各种 ...
- 构建微服务(Building Microservices)-PDF 文档
闲时翻译了几篇基于Spring Cloud.Netflix OSS 构建微服务的英文文章,为方便分享交流,整理为PDF文档. PDF 文档目录: 目录 一.微服务操作模型... 3 1. 前提 ...
- (转)CentOS下一键安装GitLab
[环境准备]OS: CentOS 6.3 x86_64 [安装要求]如果有条件,提供一台全新的Server(仅仅只安装了一些系统的软件包),可以直接使用一键安装脚本(gitlab-install-el ...
- Shell中一键添加作者,版权信息
第一步:编辑/etc/vimrc文件 [root@proxy ~]# cp /etc/vimrc /etc/vimrc.ori [root@proxy ~]# vim /etc/vimrc 第二步:直 ...
- empty 语句
empty 语句: 用来表明没有语句, 尽管JavaScript语法希望有语句会被执行. empty语句 用分号表示 (;) ,用来指明没有语句会被执行, 尽管此时JavaScript语法需要执行语句 ...
- 分解机(Factorization Machines)推荐算法原理
对于分解机(Factorization Machines,FM)推荐算法原理,本来想自己单独写一篇的.但是看到peghoty写的FM不光简单易懂,而且排版也非常好,因此转载过来,自己就不再单独写FM了 ...
- vue-miniQQ——基于Vue2实现的仿手机QQ单页面应用(接入了聊天机器人,能够进行正常对话)
使用Vue2进行的仿手机QQ的webapp的制作,作品由个人独立开发,源码中进行了详细的注释. 由于自己也是初学Vue2,所以注释写的不够精简,请见谅. 项目地址 https://github.com ...
- JDBC与ArrayList和hashmao
JDBC帮助类 package work; import java.beans.Statement;import java.sql.Connection;import java.sql.DriverM ...
- reactjs点滴记录
reactjs: render方法后面,}后面,不要加分号,加逗号,因为是对属性赋值,否则报错: var Test = React.createClass({ render:function(){re ...