国产精品天干天干,亚洲毛片在线,日韩gay小鲜肉啪啪18禁,女同Gay自慰喷水

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

11 代碼高亮——普通文本

2023-04-29 11:57 作者:不可置信Keep  | 我要投稿

(非常抱歉教程沒有錯,是我自己敲代碼敲錯了QAQ,但我懶的刪就把這筆記留下來了)

我在寫左邊顯示行數(shù)的時候,發(fā)現(xiàn)一個bug

我發(fā)現(xiàn)如果我一直向文本框輸入文本,左邊的行數(shù)顯示正常,但如果我將文本全部刪除后再次輸入時,就會導致行數(shù)顯示錯誤

??1.第一處修改的位置

//視頻中的代碼:

??// int lineCountOfTextBrowser = text.trimmed().split("\n").length();

??//使用的是text.trimmed().split("\n").length(),這會將所有空行(例如剛剛刪除的文本所在的行)都計算在內(nèi),導致行數(shù)計算不正確。


??//修改后的代碼:

??int lineCountOfTextBrowser = text.split("\n").length() - 1;

??//使用 text.split("\n").length() - 1 來計算非空行數(shù)。這樣就可以避免空行的干擾,正確計算行數(shù)了。

2.第二處修改的位置

//視頻中的代碼:

??????//text.chop((QString::number(i+1)+"\n").length());

??????//由于上方的代碼去除了空行的影響,這里的序號也要-1

??????//修改后的代碼:

??????text.chop((QString::number(i)+"\n").length());

??????//就可以修復漏洞改后的代碼:


修改完畢后的代碼:

void MyTextEdit::onTextChanged()
{
    int lineCountOfTextEdit =  ui->textEdit->document()->lineCount();
    QString text = ui->textBrowser->toPlainText();


    //視頻中的代碼:
    // int lineCountOfTextBrowser = text.trimmed().split("\n").length();
    //使用的是text.trimmed().split("\n").length(),這會將所有空行(例如剛剛刪除的文本所在的行)都計算在內(nèi),導致行數(shù)計算不正確。


    //修改后的代碼:
    int lineCountOfTextBrowser = text.split("\n").length() - 1;
    //使用 text.split("\n").length() - 1 來計算非空行數(shù)。這樣就可以避免空行的干擾,正確計算行數(shù)了。


    if(lineCountOfTextBrowser>lineCountOfTextEdit){
        for(int i =lineCountOfTextBrowser;i>lineCountOfTextEdit;i--)
        {
            //視頻中的代碼:
            //text.chop((QString::number(i+1)+"\n").length());
            //由于上方的代碼去除了空行的影響,這里的序號也要-1


            //修改后的代碼:
            text.chop((QString::number(i)+"\n").length());
            //就可以修復漏洞
        }
    }
    else if(lineCountOfTextBrowser==1&&text.length()<1){
            text+="1\n";
    }
    else if(lineCountOfTextBrowser<lineCountOfTextEdit){
        for(int i =lineCountOfTextBrowser;i<lineCountOfTextEdit;i++)
        {
            text += QString::number(i+1)+"\n";
        }
    }


    ui->textBrowser->setMaximumWidth(25+QString::number(lineCountOfTextEdit).length()*9);
    ui->textBrowser->setText(text);
}

11 代碼高亮——普通文本的評論 (共 條)

分享到微博請遵守國家法律
桐梓县| 荔浦县| 大港区| 永康市| 庆元县| 无为县| 白玉县| 若羌县| 巨鹿县| 岳池县| 抚顺县| 新昌县| 平湖市| 嘉义市| 那曲县| 罗平县| 盱眙县| 资中县| 望江县| 南漳县| 韶山市| 台州市| 光山县| 新竹县| 尼玛县| 杭州市| 景宁| 墨脱县| 贵港市| 兴安盟| 夏邑县| 鄄城县| 衡阳市| 克东县| 伽师县| 大宁县| 靖边县| 卢龙县| 贵港市| 连城县| 宜丰县|