欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Java Swing JTextArea文本區(qū)域的實(shí)現(xiàn)示例

 更新時(shí)間:2019年12月09日 11:00:06   作者:xietansheng  
這篇文章主要介紹了Java Swing JTextArea文本區(qū)域的實(shí)現(xiàn)示例,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧

1. 概述

官方JavaDocsApi: javax.swing.JTextArea

JTextArea,文本區(qū)域。JTextArea 用來(lái)編輯多行的文本。JTextArea 除了允許多行編輯外,其他基本用法和 JTextField 基本一致。

JTextArea 常用構(gòu)造方法:

/**
 * 參數(shù)說(shuō)明:
 *   text: 默認(rèn)顯示的文本
 *   rows: 默認(rèn)可見(jiàn)的行數(shù)
 *   columns: 默認(rèn)可見(jiàn)的列數(shù)
 *   
 * 默認(rèn)由 rows 和 columns 決定首選大小
 */
JTextArea()

JTextArea(String text)

JTextArea(int rows, int columns)

JTextArea(String text, int rows, int columns)

 JTextArea 常用方法:

// 是否自動(dòng)換行,默認(rèn)為 false
void setLineWrap(boolean wrap)

// 設(shè)置自動(dòng)換行方式。如果為 true,則將在單詞邊界(空白)處換行; 如果為 false,則將在字符邊界處換行。默認(rèn)為 false。
void setWrapStyleWord(boolean word)

// 獲取文本框中的文本
String getText()

// 追加文本到文檔末尾
void append(String str)

// 替換部分文本
void replaceRange(String str, int start, int end)

// 設(shè)置文本框的 文本、字體 和 字體顏色
void setText(String text)
void setFont(Font font)
void setForeground(Color fg)

// 獲取內(nèi)容的行數(shù)(以換行符計(jì)算,滿行自動(dòng)換下一行不算增加行數(shù))
int getLineCount()

// 獲取指定行(行數(shù)從0開(kāi)始)的行尾(包括換行符)在全文中的偏移量
int getLineEndOffset(int line)

// 獲取指定偏移量所在的行數(shù)(行數(shù)從0開(kāi)始)
int getLineOfOffset(int offset)

// 設(shè)置顏色,分別為: 光標(biāo)顏色、呈現(xiàn)選中部分的背景顏色、選中部分文本的顏色、不可用時(shí)文本的顏色
void setCaretColor(Color c)
void setSelectionColor(Color c)
void setSelectedTextColor(Color c)
void setDisabledTextColor(Color c)

// 設(shè)置文本框是否可編輯
void setEditable(boolean b)

/* 下面方法定義在 java.awt.Component 基類(lèi)中 */

// 判斷組件當(dāng)前是否擁有焦點(diǎn)
boolean isFocusOwner()

// 設(shè)置組件是否可用
void setEnabled(boolean b)

JTextArea 復(fù)制粘貼相關(guān)方法:

// 設(shè)置光標(biāo)開(kāi)始位置,selectionStart >= 0
void setSelectionStart(int selectionStart)

// 設(shè)置光標(biāo)結(jié)束位置,selectionEnd >= selectionStart
void setSelectionEnd(int selectionEnd)

// 復(fù)制選中部分文本
void copy()

// 剪切選中部分文本
void cut()

// 粘貼文本到文本框
void paste()

JTextArea 常用監(jiān)聽(tīng)器:

// 添加焦點(diǎn)事件監(jiān)聽(tīng)器
void addFocusListener(FocusListener listener)

// 添加文本框內(nèi)的 文本改變 監(jiān)聽(tīng)器
textField.getDocument().addDocumentListener(DocumentListener listener)

// 添加按鍵監(jiān)聽(tīng)器
void addKeyListener(KeyListener listener)

PS: JTextArea 在使用時(shí)通常把它放到 JScrollPane 容器中來(lái)使用,以此來(lái)實(shí)現(xiàn)內(nèi)容增多時(shí)可水平/垂直滾動(dòng)的效果。

2. 代碼實(shí)例

package com.xiets.swing;

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

public class Main {

  public static void main(String[] args) {
    JFrame jf = new JFrame("測(cè)試窗口");
    jf.setSize(250, 250);
    jf.setLocationRelativeTo(null);
    jf.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);

    JPanel panel = new JPanel();

    // 創(chuàng)建一個(gè) 5 行 10 列的文本區(qū)域
    final JTextArea textArea = new JTextArea(5, 10);
    // 設(shè)置自動(dòng)換行
    textArea.setLineWrap(true);
    // 添加到內(nèi)容面板
    panel.add(textArea);

    // 創(chuàng)建一個(gè)提交按鈕,點(diǎn)擊按鈕獲取輸入文本
    JButton btn = new JButton("提交");
    btn.addActionListener(new ActionListener() {
      @Override
      public void actionPerformed(ActionEvent e) {
        System.out.println("提交: " + textArea.getText());
      }
    });
    panel.add(btn);

    jf.setContentPane(panel);
    jf.setVisible(true);
  }

}

結(jié)果展示:

輸入內(nèi)容,點(diǎn)擊按鈕,查看控制臺(tái)輸出。

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • Spring Boot如何使用EhCache演示

    Spring Boot如何使用EhCache演示

    這篇文章主要介紹了Spring Boot如何使用EhCache演示,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2019-10-10
  • IntelliJ IDEA(2019)之mybatis反向生成的實(shí)現(xiàn)

    IntelliJ IDEA(2019)之mybatis反向生成的實(shí)現(xiàn)

    這篇文章主要介紹了IntelliJ IDEA(2019)之mybatis反向生成,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2019-10-10
  • 這一次搞懂SpringMVC原理說(shuō)明

    這一次搞懂SpringMVC原理說(shuō)明

    這篇文章主要介紹了這一次搞懂SpringMVC原理說(shuō)明,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2020-08-08
  • Java RabbitMQ的工作隊(duì)列與消息應(yīng)答詳解

    Java RabbitMQ的工作隊(duì)列與消息應(yīng)答詳解

    這篇文章主要為大家詳細(xì)介紹了Python實(shí)現(xiàn)學(xué)生成績(jī)管理系統(tǒng),文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來(lái)幫助
    2022-03-03
  • Java JVM字節(jié)碼指令集總結(jié)整理與介紹

    Java JVM字節(jié)碼指令集總結(jié)整理與介紹

    本節(jié)將會(huì)著重介紹一下JVM中的指令集、Java是如何跨平臺(tái)的、JVM指令集參考手冊(cè)等內(nèi)容。對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2021-09-09
  • Spring Boot集成Druid出現(xiàn)異常報(bào)錯(cuò)的原因及解決

    Spring Boot集成Druid出現(xiàn)異常報(bào)錯(cuò)的原因及解決

    Druid 可以很好的監(jiān)控 DB 池連接和 SQL 的執(zhí)行情況,天生就是針對(duì)監(jiān)控而生的 DB 連接池。本文講述了Spring Boot集成Druid項(xiàng)目中discard long time none received connection異常的解決方法,出現(xiàn)此問(wèn)題的同學(xué)可以參考下
    2021-05-05
  • Java線程編程中isAlive()和join()的使用詳解

    Java線程編程中isAlive()和join()的使用詳解

    這篇文章主要介紹了Java線程編程中isAlive()和join()的使用詳解,是Java入門(mén)學(xué)習(xí)中的基礎(chǔ)知識(shí),需要的朋友可以參考下
    2015-09-09
  • AQS同步組件CyclicBarrier循環(huán)屏障用例剖析

    AQS同步組件CyclicBarrier循環(huán)屏障用例剖析

    這篇文章主要為大家介紹了AQS同步組件CyclicBarrier循環(huán)屏障用例剖析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-08-08
  • Maven  pom.xml與settings.xml詳解

    Maven pom.xml與settings.xml詳解

    這篇文章主要介紹了Maven pom.xml與settings.xml詳解的相關(guān)資料,這里對(duì)pom.xml與setting.xml詳細(xì)的研究說(shuō)明,需要的朋友可以參考下
    2016-12-12
  • 關(guān)于SpringBoot配置文件application.properties的路徑問(wèn)題

    關(guān)于SpringBoot配置文件application.properties的路徑問(wèn)題

    這篇文章主要介紹了關(guān)于SpringBoot配置文件application.properties的路徑問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-08-08

最新評(píng)論