(總結)Swing元件的使用---文字框(JTextField)與文字區(JTextArea)
一: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.*;
- publicclass 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
- 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() {
- publicvoid windowClosing(WindowEvent e) {
- System.exit(0);
- }
- });
- }
- publicstaticvoid main(String[] args) {
- new JTextFieldDemo1();
- }
- }
二:JTextArea(文字區)的使用:
1.JTextArea的常用構造方法:
JTextArea()
構造新的 TextArea。
JTextArea(String
text) 構造顯示指定文字的新的 TextArea。
JTextArea(int
rows, int columns) 構造具有指定行數和列數的新的空 TextArea。
JTextArea
(String
text,
構造具有指定文字、行數和列數的新的 TextArea。int
rows, int columns
)
使用示例:
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
- publicclass 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() {
- publicvoid windowClosing(WindowEvent e) {
- System.exit(0);
- }
- });
- }
- // 覆蓋介面ActionListener的方法actionPerformed
- publicvoid actionPerformed(ActionEvent e) {
- if (e.getSource() == jb1) {
- jta.copy();
- } elseif (e.getSource() == jb2) {
- jta.paste();
- } elseif (e.getSource() == jb3) {
- jta.cut();
- }
- }
- publicstaticvoid main(String[] args) {
- new JTextAreaDemo3();
- }
- }
執行結果演示:
出處:http://blog.csdn.net/lyxaiclr/article/details/7433929