小博老师解析Java核心技术 ——JSwing文本域和滚轴控件

[引言]

我们在学习Java编程的时候,如果需要开发客户端窗体类型的程序,可以使用JDK中的awt和swing库。本文开始小博老师就继续为大家演示Java窗体编程中的各类控件,今天主要讲解的是文本域滚轴控件的配合使用。

[步骤阅读一]文本域控件JTextArea

文本域控件也是Java窗体中非常常见的文本类型控件,它和文本框控件的区别在于,可以让用户输入多行的文本信息,对于信息内容较大的场景,比较适合使用。我们首先简单了解下文本域控件的使用,核心代码如下:

publicclassControllerFrameextendsJFrame{

publicControllerFrame(){

super("博为峰教育");

setBounds(200, 100, 300, 300);

setLayout(null);

// 文本域控件

JTextAreatxt=newJTextArea();

txt.setBounds(5, 5, 250, 250);

add(txt);

setVisible(true);

setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

}

}

我们实例化窗体,运行程序看到的结果:

[步骤阅读二]默认情况下文本域控件的问题

现在我们可以在文本域控件中输入多行的文本信息,但是就目前而言,会存在一个比较严重的问题,当我们输入的内容超过了文本域控件的宽度和高度时,溢出部分的内容是不可见的。

[步骤阅读三]利用滚动面板解决内容溢出问题

为了解决这个问题,我们可以利用Java窗体中的滚动面板JScrollPane来配合文本域控件,当我们输入的内容溢出后,会自动出现水平和垂直方向的滚动轴提供用户拖拉,核心代码如下:

publicclassControllerFrameextendsJFrame{

publicControllerFrame(){

super("博为峰教育");

setBounds(200, 100, 300, 300);

setLayout(null);

// 实例化 文本域控件

JTextAreatxt=newJTextArea();

// 使用 文本域控件 实例化 滚动面板

JScrollPanescroll=newJScrollPane(txt);

scroll.setBounds(5, 5, 250, 250);

add(scroll);

setVisible(true);

setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

}

}

我们实例化窗体,运行程序看到的结果:

当然,我们也可以选择设置文本框控件水平溢出的内容自动换行,只需增加设置:

// 设置 文本域控件 水平溢出内容是否自动换行 true | false

txt.setLineWrap(true);

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容