Java GUI之文本区JTextArea
来源:互联网 发布:有个网络歌手老头唱歌 编辑:程序博客网 时间:2024/05/18 07:26
今天学习了Java GUI的文本区(JTextArea)及其DocumentEvent事件。
一.对菜单的复习
1.Java的菜单由菜单条(JMenuBar)、菜单(JMenu)、菜单项(JMenuItem)组成。
2.实现方法:
JMenuBar menubar=new JMenuBar();//声明并实例化菜单条
JMenu menu=new JMenu("菜单");//声明并实例化菜单,其中“菜单”可以换为编辑等
JMenuItem itemNew=new JMenuItem("新建");//声明并实例化菜单项,其中“新建”可以换为关闭等
menubar.add(menu);//把菜单添加到菜单条中
menu.add(itemNew);//把菜单项添加到菜单中
setJMenuBar(menubar);//把整个菜单加入到窗口容器中以便在其中显示出来
此时就可以实现简单的菜单->新建
二.实现文本区其实是用JTextArea类来实现,其主要方法为
1.JTextArea();//默认值得可见行数和列数
2.JTextArea(String s);//默认文本为s
3.JTextArea(int x,int y);//默认的可见行列数为y、z
4.public void setText(String s);//设置文本为s,以前的将被替换
5.public String getText();//获取文本区的文本
6.public void insert(String s,int x);//在指定位置x处插入s,其中x指从开始到当前位置的字符数
7.public void replaceRange(String s,int start,int end);//用s替换从start到end之间的文本
8.public void append(String s);//在文本区末尾添加s
9.int getCaretPosition;//调用该方法获取文本区输入光标的位置
10.public void setCaretPosition(int position);//设置输入光标的位置
11.public void selectAll();//选中全部文本
12.public void setLineWrap(boolean b);//设置能否自动换行
13.public void copy();//复制选中的内容
14.public void cut();//剪切选中的内容
15.public void paste();//粘贴剪切板上的内容
3.应用实例
//wenben.java
import java.awt.BorderLayout;
import java.awt.event.*;
import javax.swing.*;
public class wenben extends JFrame implements ActionListener{
JTextArea text;//文本区声明
JMenuBar menubar;//菜单条声明
JMenu menu;菜单声明
JMenuItem itemCopy,itemCut,itemPaste,itemSelectAll;几个菜单项的声明
public wenben(){
init();
setBounds(200,200,250,250);//设置窗口的位置和大小
setVisible(true);//设置为窗口可见
setDefaultCloseOperation(EXIT_ON_CLOSE);//
}
void init(){
text=new JTextArea();//用默认的方法创建一个文本区
//实例化菜单条、菜单、菜单项
menubar=new JMenuBar();
menu=new JMenu("编辑");
itemSelectAll=new JMenuItem("全选");
itemCopy=new JMenuItem("复制");
itemCut=new JMenuItem("剪切");
itemPaste=new JMenuItem("粘贴");
//把菜单项加入到菜单中
menu.add(itemSelectAll);
menu.add(itemCopy);
menu.add(itemCut);
menu.add(itemPaste);
//把菜单加入到菜单条中
menubar.add(menu);
setJMenuBar(menubar);
text=new JTextArea();
add(new JScrollPane(text),BorderLayout.CENTER);//JScrollPane表示滚动框格
//将本地窗口注册为ActionEvent事件
itemSelectAll.addActionListener(this);
itemCopy.addActionListener(this);
itemCut.addActionListener(this);
itemPaste.addActionListener(this);
}
public void actionPerformed(ActionEvent e){//e.getSource获取源操作
if(e.getSource()==itemCopy)
text.copy();
else if(e.getSource()==itemCut)
text.cut();
else if(e.getSource()==itemPaste)
text.paste();
else
text.selectAll();
}
}
//Main.java
public class Main {
public static void main(String[] args) {
wenben win=new wenben();
win.setTitle("文本区GUI");
}
}
运行效果:
- Java GUI之文本区JTextArea
- Java GUI之JTextArea
- Java GUI之(JRadioButton、JCheckBox、JTextArea)实例
- Java-GUI-JTextArea/JTextField/JTextPane
- [Java GUI] 从JTextArea中解析数字并求和
- [Java GUI] 在JTextArea中显示选定文件的内容
- Java Swing中的文本区(JTextArea)实现换行保存到文件的几个方法
- Java笔记之JTextField JTextArea区别
- java swing jtextarea添加文本后自动显示最后一行
- JTextArea高亮文本
- 文本域组件JTextArea
- Swing组件的使用---文本框(JTextField)与文本区(JTextArea)
- Java学习笔记之JTextArea自动滚动到最后一行
- [Java]JTextArea自动换行
- java编程心得(四)——JTextArea文本及时的刷新与添加
- JAVA Swing 图形化编程(二)文本输入框JTextField/JTextArea
- java中的文本输入框JTextField与JTextArea、密码输入框
- java之GUI
- 面试基础_01字符串反转操作
- 段间跳转指令jmpi和实模式寻址
- Android动态加载jar/dex
- 简单表单框
- javaweb工程获取webContent下WEB-INF下的配置文件
- Java GUI之文本区JTextArea
- 推荐漂亮的flash网页MP3音乐播放器
- Python 正则表达式验证Combined Log
- 关于TP-LINK宽带路由器上的“转发规则”功能用途及设置办法 -- LAN与WAN通信的IP转换
- E9 搭建 NFS 环境并从 NFS 启动开发板
- arcengine对featureclass重命名问题
- PHP利用Gearman来处理并行多进程问题
- Swift在Xcode 6.1 Beta 3中的更新
- Java中泛型(2)——泛型类(传智播客毕老师视频讲解)