TextArea控件實時計算總字數,總行數,和每行顯示的最大字數


textarea標簽定義

 textarea標簽定義一個多行的文本輸入控件,也稱為“文字域”或“文本域”文本區域中可容納無限數量的文本,其中的文本的默認字體是等寬字體(通常是 Courier);語法如下:

                                                                                   ﹤textarea﹥這是一個多行文本輸入框﹤textarea﹥

        textarea標簽中自帶了許多屬性,可通過 rows 屬性來規定文本域中顯示的可見行數,可通過 cols 屬性來規定文本域中可見的列數;例如設置textarea標簽8行50列,代碼書寫為:﹤textarea rows="8" cols="50"﹥﹤/textarea﹥

textarea標簽屬性

  1. name:為文本域指定名稱;
  2. rows:規定文本域內可見的行數;
  3. cols:規定文本域內可見的行數;
  4. disabled:禁用文本區域,該屬性會使文本輸入框無效,無法輸入文字並且會變成灰色;
  5. readonly:規定文本域為只讀,使文本域無法輸入文字; 

 

代碼如下:

   

taSubtitlesWords.textProperty().addListener(new ChangeListener<String>() {//taSubitlesWords是文本域,文本的監聽事件

            @Override
            public void changed(ObservableValue<? extends String> observable, String oldValue, String newValue) {
                int colums = 0;
                String str1 = taSubtitlesWords.getText();
                String str2 = "\n";
                int total = 0;
                for (String tmp = str1; tmp != null && tmp.length() >= str2.length();) {
                    if (tmp.indexOf(str2) == 0) {
                        total++;//求出敲“回車”的次數
                    }
                    tmp = tmp.substring(1);
                }
               String[] result= str1.split("\n");
               if(result.length>0){
                   
                   colums=result[0].length();
                 for (int i=0;i<result.length;i++) {
                    if (result[i].length() >colums) {//循環比較 算出最大行數
                        colums=result[i].length();
                    }
                }
               }
                lbSubtitlesTotalWordNum.setText("" + (taSubtitlesWords.getText().length() - (total)));//設置總字數
                tfSubtitlesWordLines.setText("" + (total + 1));//設置總行數
                int words = Integer.parseInt(lbSubtitlesTotalWordNum.getText());//總字數
                int lines = Integer.parseInt(tfSubtitlesWordLines.getText());//行數
               
                if (words != 0 && lines != 0) {
                   
                }
                tfSubtitlesWordNum.setText("" + colums);//設置每行最多顯示字數
                tfSubtitlesRollWidth.setText("" + colums);//寬度
                tfSubtitlesRollHeight.setText("" + lines);//高度

            }
        });

 

 

 

 

 

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM