欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

Java Swing中的文本框(JTextField)与文本区(JTextArea)使用实例

程序员文章站 2024-02-29 12:14:04
一:jtextfield的(文本框)使用: jtextfield 是一个轻量级组件,它允许编辑单行文本。 1.jtextfield的常用构造方法: jtextfiel...

一:jtextfield的(文本框)使用:

jtextfield 是一个轻量级组件,它允许编辑单行文本。

1.jtextfield的常用构造方法:

jtextfield() 构造一个新的 textfield。

jtextfield(int columns) 构造一个具有指定列数的新的空 textfield。

jtextfield(string text) 构造一个用指定文本初始化的新textfield。

jtextfield(string text, int columns) 构造一个用指定文本和列初始化的新textfield。

2.jtextfield的常用方法:

settext(string) 设置文本域中的文本值
gettext()返回文本域中的输入文本值
getcolumns()返回文本域的列数
seteditable(boolean) 设置文本域是否为只读状态

3.jtextfield的使用示例:

复制代码 代码如下:

import java.awt.*;
import java.awt.event.*;
import javax.swing.*;

public class jtextfielddemo1 {

 jframe jf;
 jpanel jp;
 jtextfield jtf1,jtf2,jtf3,jtf4;
 
 public jtextfielddemo1() {
  
  jf = new jframe("textfield案例");
  
  container contentpane = jf.getcontentpane();
  contentpane.setlayout(new borderlayout());
  
  jp = new jpanel();
  
  jtf1 = new jtextfield();
  jtf2 = new jtextfield(10);
  jtf3 = new jtextfield("指定文本内容");
  jtf4 = new jtextfield("指定内容+指定长度(只读状态)",30);
  
  jtf3.setenabled(false);
  jtf4.setfont(new font("谐体",font.bold|font.italic,16));
  //设置文本的水平对齐方式
  jtf4.sethorizontalalignment(jtextfield.center);
  
  jp.add(jtf1);
  jp.add(jtf2);
  jp.add(jtf3);
  jp.add(jtf4);
  
  contentpane.add(jp);
  
  jf.pack();
  jf.setlocation(400, 200);
  jf.setvisible(true);

  jf.addwindowlistener(new windowadapter() {
   public void windowclosing(windowevent e) {
    system.exit(0);
   }
  });
 }

 public static void main(string[] args) {
  new jtextfielddemo1();
}
}

效果图:

Java Swing中的文本框(JTextField)与文本区(JTextArea)使用实例 

二:jtextarea(文本区)的使用:

1.jtextarea的常用构造方法:

jtextarea() 构造新的 textarea。

jtextarea(string  text) 构造显示指定文本的新的 textarea。

jtextarea(int rows, int columns)  构造具有指定行数和列数的新的空 textarea。

jtextarea(string  text, int rows, int columns)  构造具有指定文本、行数和列数的新的 textarea。

使用示例:

复制代码 代码如下:

jtextarea t1 = new jtextarea();
jtextarea t2 = new jtextarea(2, 8);
jtextarea t3 = new jtextarea("jtextarea3");
jtextarea t4 = new jtextarea("jtextarea4", 5, 10);

2.jtextarea的常用方法:

使用示例:

复制代码 代码如下:

t1.settext("jtextarea1");// settext()设置文本显示的内容
t2.append("jtextarea2");// append()方法会将给定文本追加到文档结尾。
t4.setlinewrap(true);// 设置文本区的换行策略。
t4.setfont(new font("标楷体", font.bold, 16));  //设置当前字体。
t4.settabsize(2);//使用settabsize()方法设置[tab]键的跳离距离

将jtextarea放入jscrollpane中,这样就能利用滚动的效果看到输入超过jtextarea高度的文字.

3.jtextarea使用的案例:

复制代码 代码如下:

import java.awt.*;
import java.awt.event.*;
import javax.swing.*;

//实现接口actionlistener
public class jtextareademo3 implements actionlistener {

 jframe jf;
 jpanel jpanel;
 jbutton jb1, jb2, jb3;
 jtextarea jta = null;
 jscrollpane jscrollpane;

 public jtextareademo3() {

  jf = new jframe("jtextarea案例3");
  container contentpane = jf.getcontentpane();
  contentpane.setlayout(new borderlayout());

  jta = new jtextarea(10, 15);
  jta.settabsize(4);
  jta.setfont(new font("标楷体", font.bold, 16));
  jta.setlinewrap(true);// 激活自动换行功能
  jta.setwrapstyleword(true);// 激活断行不断字功能
  jta.setbackground(color.pink);

  jscrollpane = new jscrollpane(jta);
  jpanel = new jpanel();
  jpanel.setlayout(new gridlayout(1, 3));

  jb1 = new jbutton("复制");
  jb1.addactionlistener(this);
  jb2 = new jbutton("粘贴");
  jb2.addactionlistener(this);
  jb3 = new jbutton("剪切");
  jb3.addactionlistener(this);

  jpanel.add(jb1);
  jpanel.add(jb2);
  jpanel.add(jb3);

  contentpane.add(jscrollpane, borderlayout.center);
  contentpane.add(jpanel, borderlayout.south);

  jf.setsize(400, 300);
  jf.setlocation(400, 200);
  jf.setvisible(true);

  jf.addwindowlistener(new windowadapter() {
   public void windowclosing(windowevent e) {
    system.exit(0);
   }
  });
 }

 // 覆盖接口actionlistener的方法actionperformed
 public void actionperformed(actionevent e) {
  if (e.getsource() == jb1) {
   jta.copy();
  } else if (e.getsource() == jb2) {
   jta.paste();
  } else if (e.getsource() == jb3) {
   jta.cut();
  }
 }

 public static void main(string[] args) {
  new jtextareademo3();
 }
}

运行结果演示:

Java Swing中的文本框(JTextField)与文本区(JTextArea)使用实例