java学习——59.文本编辑组件

Java中的文本编辑组件主要有:JTextField(文本行)、JPasswordField(密码行)、JTextArea(文本区)。

1、JTextComponet文本编辑组件类

    JTextComponet类是所有文本编辑组件的父类,其中声明的方法均可在文本行或文本区中使用。

其声明如下:

public abstract class JTextComponent extends JComponent implements Scrollable,Accessible

{

public String getText()                            //获得文本行中的内容

public void setText(Stringtext)          //设置文本行中的内容

public void setEditable(boolean edit) //设置文本行是否可编辑

public boolean isEditable()                  //判断文本行是否可编辑

}

2、JTextField单行文本编辑框

其用法与awt中的TextField基本相同,只是增加了一个方法:

public void setHorizontalAlignment(int alignment)

此方法用于设置文本行中文字的水平对齐方式。取值为JTextField.LEFT(左对齐)、JTextField.RIGHT(右对齐)、JTextField.CENTER(居中对齐)。

3、JPasswordField密码框

是JTextField的子类,用于输入密码的一行字符串,不明文显示原字符,只以“****”显示。

其所有的方法与JTextField一致。

4、JTextArea文本区

前两种文本编辑组件均只能输入或显示一行字符。而JTextArea可显示多行字符。它的基本操作与文本行类似。其声明如下:

public class JTextArea extends JTextComponent

{

public JTextArea()

public JTextArea(Stringtext)             //text指定初始显示文本

public JTextArea(int rows, int columns) //指定行数和列数

public JTextArea(Stringtext, int rows, int columns)

}

5、例:本例以用户登陆界面为例,说明文本编辑组件的用法。

其完整代码如下:

import java.awt.*;

import java.awt.event.*;

import javax.swing.*;

import javax.swing.event.*;

public class LoginJFrame extends JFrame{

private JTextField username;

private JPasswordField password;

private JTextArea shuoming;

public LoginJFrame(){

super("登录");

this.setLocationRelativeTo(null);

this.setSize(250,160);

this.setVisible(true);

this.setLayout(new GridLayout(2,1));

JPanel user_panel=new JPanel();

user_panel.add(new JLabel("请输入用户名:"));

username=new JTextField(10);//文本行

user_panel.add(username);

user_panel.add(new JLabel("请输入密    码:"));

password=new JPasswordField(10);//密码行

user_panel.add(password);

this.getContentPane().add(user_panel);

JPanel area_panel=new JPanel();

shuoming=new JTextArea(3,20);//文本区

shuoming.setLineWrap(true);//设置文本区自动换行

area_panel.add(shuoming);

this.getContentPane().add(area_panel);

}

public static void main(String args[]){

new  LoginJFrame();

}

}

其运行结果如下:

如图所示,用户名是JTextField单行文本行,以明文输入。密码是JPasswordField密码行,以密文输入。底下是一个文本区,3行20列的,占满 了整个框架。

(0)

相关推荐

  • 一文解读,如何让Java控制台应用程序变得简单

    介绍 关于的控制台应用程序.我一直都在写这些程序,为了创建一次性测试来探索新的编码理念.我甚至快速的串起了基于菜单的测试远程设备通信和命令集的测试应用程序,其中命令的数量可以在产品开发周期中增长.当然 ...

  • java学习——60.文本编辑组件事件

    本篇在上篇(java学习--59.文本编辑组件)的基础上介绍文本编辑组件的事件. 文本编辑组件可以响应的事件有两种: 1.CaretEvent事件 此事件是在文本行或者文本区中只要有任何修改,便会触发 ...

  • java学习——47、AWT组件类

    AWT(Abstract Window Tookit,抽象窗口工具集),主要包括组件(component).容器(container).窗口(Window).面板(Panel).框架(Frame).对 ...

  • Java学习-注解和反射

    注解 java.Annotation Annotation的作用:可以呗其他程序读取 Annotation的格式 注解是:@注释名 在代码中存在,还可以添加一些参数 ​@SuppressWarning ...

  • Java学习-多线程

    多线程 任务(Task).进程(Process).线程(Thread) 进程的创建 1.继承Thread类 自定义线程类继承Thread类 重写run()方法,编写线程执行体 创建线程对象,调用sta ...

  • Java学习-Mybatis

    Mybatis Maven依赖: <!-- https://mvnrepository.com/artifact/org.mybatis/mybatis --> <dependenc ...

  • Java 学习笔记

    您对计算机(电脑)有了解吗? 计算机组成 系统软件 直接和硬件交互的软件叫系统软件,例如 win7.win8.Linux.mac等操作系统 应用软件 通常在运行在系统软件上,也就是在系统软件上开发的软 ...

  • Java学习-126.2048代码

    本篇帖的是按钮的代码. 因为按钮比较多,包括菜单项的动作,为了区分,我用了两个内部类来实现这两部分代码. //本类是Game_2048类的内部类,用来实现上.下.左.右四个按钮,以及重新开始和退出游戏 ...

  • Java学习—125.2048代码

    本篇帖的是部分动作代码. 每个方法前都有注释说明本方法的功能. //随机选取一个位置,并填入数字2.如果此位置中已有数字,那么换一个位置. public void rule(){ x=ran.next ...

  • Java学习—124.2048代码

    游戏的主界面的代码在类game_2048中. 本类主要包括两个方面: 一是布局. 二是动作,按钮的动作. 其中,动作又有菜单动作,按钮动作.而按钮动作又有多方面,在下一篇的代码中会有注释说明. 本篇帖 ...