记事本的多行文本区(文本区和滚动条)

单行文本的输入存在严重的缺陷,也不适合实际的运用,本节通过一个无功能的记事本来介绍可以进行多行输入的JTextAre

JTextArea

JTextArea()    :创建一个内容为空的文本区

JTextArea(Document doc)  :创建具有指定文档的文本区

JTextArea(Document doc,String text,int rows,int columns) :创建具有指定文档,行数,列数的文本区

JTextArea(int rows,int columns)   :指定行数,列数的文本区

JTextArea(String text)  :指定文本内容的文本区

JTextArea(String text,int rows,int columns)   :指定文本内容和行数,列数的文本区

JTextArea 的一些常用方法:

public void append(String str) :将给定文本追加到文档结尾。 
boolean getLineWrap() :获取文本区的换行策略。 
public int getRows() :返回 TextArea 中的行数。 
public boolean getWrapStyleWord() :获取换行方式(如果文本区要换行)。 
public void setWrapStyleWord(boolean word) :设置换行方式(如果文本区要换行)
public void insert(String str, int pos) :将指定文本插入指定位置。  

public void setColumns(int columns) :设置此 TextArea 中的列数。

public void setFont(Font f) :设置当前字体。 
public void setLineWrap(boolean wrap) :设置文本区的换行策略。 
public void setRows(int rows) :设置此 TextArea 的行数。 
public void setEditable(boolean b):设置文本区的编辑状态。参数为true表示可编辑状态,为false则表示不可编辑状态
JScrollPane
JscrollPane() :创建一个滚动条,水平和垂直都可以显示
JscrollPane(Component view) : 创建一个显示指定组件内容的滚动条,当组件的内容超过视图大小就会显示水平和垂直的的滚动条
JscrollPane(Component view,int vsbPolicy,int hsbPolicy)  :创建一个显示指定组件内容的滚动条,且有指定滚动策略的滚动条
JscrollPane(int vsbPolicy,int hsbPolicy)  :创建一个有指定滚动策略的滚动条
JscrollPane类的构造方法中使用的滚动条策略主要有6种:
常量                                                                                                         常量含义
HORIZONTAL_SCROLLBAR_AS_NEEDED                                 当需要时显示水平滚动条 HORIZONTAL_SCROLLBAR_ALWAYS                                          一直显示水平滚动条 HORIZONTAL_SCROLLBAR_NEVER                                           一直不显示水平滚动条 VERTICAL_SCROLLBAR_AS_NEEDED                                      当需要时显示垂直滚动条 VERTICAL_SCROLLBAR_ALWAYS                                               一直显示垂直滚动条 VERTICAL_SCROLLBAR_NEVER                                                一直不显示垂直滚动条

VERTICAL

public int getHorizontalScrollBarPolicy  ():  获取水平滚动策略值

public int getVerticalScrollBarPolicy()  :获取垂直滚动策略值

public void getHorizontalScrollBarPolicy  ():  设置水平滚动策略值

public void getVerticalScrollBarPolicy()  :设置垂直滚动策略值

public boolean isWheelScrollingEnabled()  : 设置是否进行滚动以响应鼠标滚轮

public void setViewportView(Conponent view) :设置滚动条中的滚动组件

public void setWheelScrollingEnabled(boolean handleWheel):启动/禁用对鼠标滚轮滚动的移动响应

代码实例:

package ch10;

import java.awt.event.*;

import javax.swing.*;

public class NoteTextArea extends JFrame implements ActionListener
{
    private JPanel jp = new JPanel ();
    JButton jb1 = new JButton("点我自动换行");
    JButton jb2 = new JButton("点我不换行");
    private JTextArea jt = new JTextArea();
    private JScrollPane js = new JScrollPane(jt);
    public NoteTextArea()
    {
    	jp.setLayout(null);
    	jb1.setBounds(40,40,180,20);
    	jb2.setBounds(280,40,180,20);
    	jp.add(jb1);
    	jp.add(jb2);
    	jb1.addActionListener(this);
    	jb2.addActionListener(this);
    	js.setBounds(40,80,420,100);
    	jp.add(js);
    	jt.setLineWrap(false);
    	for(int i=0;i<30;i++)
    	{
    		jt.append("自动换行,不换行!");
    	}
    	this.add(jp);
    	this.setBounds(80,80,300,300);
    	this.setVisible(true);
    	this.setTitle("记事本多行文本区");
    	this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    }
    public void actionPerformed(ActionEvent a)
    {
    	if(a.getSource()==jb1)
    	{
    		jt.setLineWrap(true);
    	}
    	else if(a.getSource()==jb2)
    	{
    		jt.setLineWrap(false);
    	}
    }
    public static void main(String args[])
    {
    	new NoteTextArea();
    }
}
时间: 2024-08-01 02:51:03

记事本的多行文本区(文本区和滚动条)的相关文章

需求:利用选项事件类,使用选择框设置文本区的字形与颜色

代码: 1 package unit13; 2 import javax.swing.*; 3 4 import java.awt.Color; 5 import java.awt.FlowLayout; 6 import java.awt.Font; 7 import java.awt.event.ItemEvent; 8 import java.awt.event.ItemListener; 9 public class app3 extends JFrame implements Item

文档的滚动条、标准怪异模式、视口尺寸

滚动条距离 window.pageXOffset | window.pageYOffset (IE8 集iE8 以下不兼容) ** 下面两组都是IE8 的解决方法 但是由于兼容性混乱 两种方法 俩组方法互斥,有一组方法有值的话另一组则为0 ** ** 解决方法将两个值相加就可以解决问题 ** document.body.scrollLeft | document.body.scrollTop document.documentElement.scrollTop | document.docume

【Java GUI】文本框和文本区

文本框 文本框(JTextField)是界面中用于输入和输出一行文本的框.JTextField类用来建立文本框.与文本框相关的接口是ActionListener. 文本框处理程序的基本内容有以下几个方面: ①声明一个文本框名. ②建立一个文本框对象. ③将文本框对象加入到某个容器. ④对需要控制的文本框对象注册监视器,监听文本框的输入结束(即输入回车键)事件. ⑤一个处理文本框事件的方法,完成对截获事件进行判断和处理. JTextField类的主要构造方法 JTextField();//文本框的

Java知多少(86)文本框和文本区的输入输出

在GUI中,常用文本框和文本区实现数据的输入和输出.如果采用文本区输入,通常另设一个数据输入完成按钮.当数据输入结束时,点击这个按钮.事件处理程序利用getText()方法从文本区中读取字符串信息.对于采用文本框作为输入的情况,最后输入的回车符可以激发输入完成事件,通常不用另设按钮.事件处理程序可以利用单词分析器分析出一个个数,再利用字符串转换数值方法,获得输入的数值.对于输出,程序先将数值转换成字符串,然后通过setText()方法将数据输出到文本框或文本区. [例 11-9]小应用程序设置一

十. 图形界面(GUI)设计7.文本框和文本区的输入输出

在GUI中,常用文本框和文本区实现数据的输入和输出.如果采用文本区输入,通常另设一个数据输入完成按钮.当数据输入结束时,点击这个按钮.事件处理程序利用getText()方法从文本区中读取字符串信息.对于采用文本框作为输入的情况,最后输入的回车符可以激发输入完成事件,通常不用另设按钮.事件处理程序可以利用单词分析器分析出一个个数,再利用字符串转换数值方法,获得输入的数值.对于输出,程序先将数值转换成字符串,然后通过setText()方法将数据输出到文本框或文本区. [例 11-9]小应用程序设置一

笔记本右键菜单新建文本文档,记事本怎么都没有了,怎么恢复

问题:无法打开此安装包.请确认该程序包存在,并且您有权限访问它 方法一:建议是下载<WINDOWS 优化大师>点击系统优化,选择系统个性设置,点击顶上的更多设置你就可以设置你的右键菜单了方法二:你先通过:开始----程序----附件----记事本 来打开一个空的记事本程序,然后将下面的这段注册表代码复制粘贴进去,将此记事本文档另存为 1.reg 注册表文档,也可以先保存记事本,然后将 新建文本文档.txt 重命名为 1.reg 注册表项目,然后将它双击“导入”合并即可: Windows Reg

Java Swing实现具有基本功能的记事本程序

Java Swing实现具有基本功能的记事本 目前实现了: 文件 新建 打开 保存 退出前保存询问 编辑 剪切 复制 粘贴 清除 撤销 格式 字体选择 字体颜色选择 帮助 关于 (样式采用了css与html来描绘) 工具栏 图标形式的: 保存 复制 粘贴 剪切 文字加粗 文字斜体 底部状态栏 文本字数实时统计 日期显示 编码显示(其实是假的哈哈) 右键弹出菜单 复制 粘贴 剪切 工具栏和右键弹出菜单共享了一些图标,特别地,右键弹出菜单使用了鼠标监听器来实时报告鼠标的坐标,从而绘制弹出菜单. 图标

java GUI(实例项目--记事本)

//package mymenu; //java记事本 import java.awt.*; import java.awt.event.*; import java.io.*; public class MenuLianXi { //定义窗体 private Frame f; //定义菜单栏 private MenuBar menubar; //定义文本区 private TextArea textarea; //定义菜单 private Menu file_menu; //定义菜单项 pri

Java开发记事本(未完待续)

右键菜单图 打印图 设置背景颜色.字体样式.字体颜色图 主要 package com.sxt.nodepad.view; import java.awt.BorderLayout; public class NotepadMainFrame extends JFrame implements ActionListener{ /** * 序列号 */ private static final long serialVersionUID = 8585210209467333480L; private