一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|JAVA教程|ASP教程|

服務器之家 - 編程語言 - JAVA教程 - Swing常用組件之文本框和文本區

Swing常用組件之文本框和文本區

2020-04-25 16:02java教程網 JAVA教程

這篇文章主要為大家詳細介紹了Swing常用組件之文本框(JTestField)和文本區(JTextArea),Swing是一個用于開發Java應用程序用戶界面的開發工具包,本文開始帶大家學習Swing

一、JTextField(文本框)的使用

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的使用示例:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
package ch10;
 
import java.awt.event.*;
 
import javax.swing.*;
 
public class LoginTest extends JFrame implements ActionListener
{
  private JPanel jp = new JPanel();
  JLabel name = new JLabel("請輸入用戶名");
  JLabel password = new JLabel("請輸入密碼");
  JLabel show = new JLabel("");
  private JLabel[] jl = new JLabel[]{name,password,show};
  JButton login = new JButton("登錄");
  JButton reset = new JButton("重置");
  private JButton[] jb = new JButton[]{login,reset};
  private JTextField jname= new JTextField();
  private JPasswordField jpass = new JPasswordField();
  public LoginTest()
  {
    jp.setLayout(null);
    for(int i=0;i<2;i++)
    {
      jl[i].setBounds(30,20+40*i,180,20);
      jb[i].setBounds(30+110*i,100,80,20);
      jb[i].addActionListener(this);
      jp.add(jl[i]);
      jp.add(jb[i]);
    }
    jname.setBounds(130,15,100,20);
    jp.add(jname);
    jname.addActionListener(this);
    jpass.setBounds(130,60,100,20);
    jp.add(jpass);
    jpass.addActionListener(this);
    jpass.setEchoChar('*');
    jl[2].setBounds(10,180,270,20);
    jp.add(jl[2]);
    this.add(jp);
    this.setBounds(200,200,300,300);
    this.setVisible(true);
    this.setTitle("登錄窗口");
    this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
  }
  public void actionPerformed(ActionEvent a)
  {
    if(a.getSource()==jname)
    {
      jpass.requestFocus();
    }
    else if(a.getSource()==jb[1])
    {
      jl[2].setText("");
      jname.setText("");
      jpass.setText("");
      jname.requestFocus();
    }
    else
    {
      if(jname.getText().equals("lixiang")&&String.valueOf(jpass.getPassword()).equals("201407239"))
      {
        jl[2].setText("登錄成功,歡迎您的到來!");
      }
      else
      {
        jl[2].setText("對不起,您的密碼或用戶名錯誤!");
      }
    }
  }
  public static void main(String args[])
  {
    new LoginTest();
  }
}

二、JTextArea(文本區)的使用

1.JTextArea的常用構造方法:
        JTextArea() 構造新的 TextArea。
        JTextArea(String  text) 構造顯示指定文本的新的 TextArea。
        JTextArea(int rows, int columns)  構造具有指定行數和列數的新的空 TextArea。
        JTextArea(String  text, int rows, int columns)  構造具有指定文本、行數和列數的新的 TextArea。

使用示例:

?
1
2
3
4
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使用的案例:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
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();
  }
}

以上就是本文的全部內容,希望對大家的學習有所幫助。

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 操闺蜜| 五月丁开婷婷 | 九九免费高清在线观看视频 | 国产精品成人在线播放 | 欧美特级特黄a大片免费 | www红色一片在线观看版 | 黄a在线观看 | 翁息肉小说老扒 | 国产精品调教 | 美女被视频网站看免费入口 | 高跟翘臀老师后进式视频 | 久久国产精品高清一区二区三区 | 精品一区二区三区五区六区七区 | 男人的j伸到女人的屁股眼 男人吃奶动态图 | 精品视频日本 | 99福利影院 | 2022天堂岛日产 | 国产真实乱子伦xxxxchina | 国产一区二区免费不卡在线播放 | 日韩欧美不卡片 | 欧美添下面视频免费观看 | 美女班主任下面好爽好湿好紧 | 五月天色综合 | 欧美在线观看网址 | 国色天香社区视频在线观看免费完整版 | 日韩免费在线看 | 2022国产麻豆剧传媒古装 | 亚洲男人天堂久久 | 87影院在线观看视频在线观看 | 狠狠草视频| 亚洲第一国产 | 精品国产无限资源免费观看 | 99热成人精品热久久669 | 亚洲欧美自偷自拍另类小说 | 草逼视频免费看 | 国产精品视频久久 | 偷拍综合网 | 国产免费精彩视频 | 日本特级大片 | 亚洲AV人无码综合在线观看蜜桃 | 国产普通话对白露脸流出 |