Swing經常使用組件之多行文本區JTextArea。本站提示廣大學習愛好者:(Swing經常使用組件之多行文本區JTextArea)文章只能為提供參考,不一定能成為您想要的結果。以下是Swing經常使用組件之多行文本區JTextArea正文
單行文本的輸出存在嚴重的缺點,也不合適現實的應用,本節經由過程一個無功效的記事原來引見可以停止多行輸出的JTextArea:
JTextArea():創立一個內容為空的文本區
JTextArea(Document doc) :創立具有指定文檔的文本區
JTextArea(Document doc,String text,int rows,int columns) :創立具有指定文檔,行數,列數的文本區
JTextArea(int rows,int columns) :指定行數,列數的文本區
JTextArea(String text) :指定文本內容的文本區
JTextArea(String text,int rows,int columns) :指定文本內容和行數,列數的文本區
JTextArea 的一些經常使用辦法:
public void append(String str) :將給定文本追加到文檔開頭。
boolean getLineWrap() :獲得文本區的換行戰略。
public int getRows() :前往 TextArea 中的行數。
public boolean getWrapStyleWord() :獲得換行方法(假如文本區要換行)。
public void setWrapStyleWord(boolean word) :設置換行方法(假如文本區要換行)
public void insert(String str, int pos) :將指定文本拔出指定地位。
public void setColumns(int columns) :設置此 TextArea 中的列數。
public void setFont(Font f) :設置以後字體。
public void setLineWrap(boolean wrap) :設置文本區的換行戰略。
public void setRows(int rows) :設置此 TextArea 的行數。
public void setEditable(boolean b):設置文本區的編纂狀況。參數為true表現可編纂狀況,為false則表現弗成編纂狀況
將JTextArea放入JScrollPane中,如許就可以應用轉動的後果看到輸出跨越JTextArea高度的文字.
JScrollPane
JscrollPane() :創立一個轉動條,程度和垂直都可以顯示
JscrollPane(Component view) : 創立一個顯示指定組件內容的轉動條,當組件的內容跨越視圖年夜小就會顯示程度和垂直的的轉動條
JscrollPane(Component view,int vsbPolicy,int hsbPolicy) :創立一個顯示指定組件內容的轉動條,且有指定轉動戰略的轉動條
JscrollPane(int vsbPolicy,int hsbPolicy) :創立一個有指定轉動戰略的轉動條
JscrollPane類的結構辦法中應用的轉動條戰略重要有以下幾種:
public int getHorizontalScrollBarPolicy (): 獲得程度轉動戰略值
public int getVerticalScrollBarPolicy() :獲得垂直轉動戰略值
public void getHorizontalScrollBarPolicy (): 設置程度轉動戰略值
public void getVerticalScrollBarPolicy() :設置垂直轉動戰略值
public boolean isWheelScrollingEnabled() : 設置能否停止轉動以呼應鼠標滾輪
public void setViewportView(Conponent view) :設置轉動條中的轉動組件
public void setWheelScrollingEnabled(boolean handleWheel):啟動/禁用對鼠標滾輪轉動的挪動呼應
代碼實例:
package ch10; import java.awt.event.*; import javax.swing.*; public class NoteTextArea extends JFrame implements ActionListener { private JPanel jp = new JPanel (); JButton jb1 = new JButton("點我主動換行"); JButton jb2 = new JButton("點我不換行"); private JTextArea jt = new JTextArea(); private JScrollPane js = new JScrollPane(jt); public NoteTextArea() { jp.setLayout(null); jb1.setBounds(40,40,180,20); jb2.setBounds(280,40,180,20); jp.add(jb1); jp.add(jb2); jb1.addActionListener(this); jb2.addActionListener(this); js.setBounds(40,80,420,100); jp.add(js); jt.setLineWrap(false); for(int i=0;i<30;i++) { jt.append("主動換行,不換行!"); } this.add(jp); this.setBounds(80,80,300,300); this.setVisible(true); this.setTitle("記事本多行文本區"); this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); } public void actionPerformed(ActionEvent a) { if(a.getSource()==jb1) { jt.setLineWrap(true); } else if(a.getSource()==jb2) { jt.setLineWrap(false); } } public static void main(String args[]) { new NoteTextArea(); } }
以上就是本文的全體內容,願望對年夜家的進修有所贊助。