国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

二、Qt定時器與文本編輯器制作《QT 入門到實戰(zhàn)》

這篇具有很好參考價值的文章主要介紹了二、Qt定時器與文本編輯器制作《QT 入門到實戰(zhàn)》。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

學習目標

  • 了解 qt 的 pixmap
  • 了解 qt 的 label 如何顯示圖片
  • 了解定時器的開啟
  • 了解定時器的關(guān)閉
  • 了解文件如何進行讀取
  • 了解 QFileDialog 的使用
  • 了解了一個文本編輯器的基本編寫
  • 鞏固了 connect 的使用

一、制作一個圖片瀏覽器

1.1 Pixmap

在 Qt 中使用 Label 可以顯示文本,但 Label 不止可以顯示文本,還可以用于圖片的顯示。

首先我們雙擊 ui 文件,隨后在彈出的設(shè)計窗口中創(chuàng)建一個 Label :

二、Qt定時器與文本編輯器制作《QT 入門到實戰(zhàn)》

接著拖動這個 label 的寬高,拖動至一個比較好展示圖片的大?。?/p>

二、Qt定時器與文本編輯器制作《QT 入門到實戰(zhàn)》

接著我們需要創(chuàng)建一個 QPixmap 對象。

QPixmap 類是一個用于處理圖像的類,創(chuàng)建一個 QPixmap 傳入對應的路徑即可得到這個這個類對于這個圖片處理的對象,QPixmap 更適合處理小圖片。

如下就是一個創(chuàng)建 QPixmap 類對象的方法:

QPixmap pix("D:\\developer\\QT\\pro\\01\\04\\04\\img\\1.png");

在此傳入了一張圖片進行對象初始化,接下來就可以直接將這個圖片顯示在 label 之上。

使用 ui 指定需要顯示圖片的控件 label,在 label 中有一個 setPixmap 方法,通過 setPixmap 傳入 QPixmap 的對象 pix 即可對圖片進行設(shè)置:

代碼如下:

ui->label->setPixmap(pix);

此時代碼如下:

二、Qt定時器與文本編輯器制作《QT 入門到實戰(zhàn)》

以上的報錯都是 bug,其實代碼是正確的,我們此時只需要點擊運行,那么即會彈出一個窗口,上面使用了 label 顯示一張圖片:

二、Qt定時器與文本編輯器制作《QT 入門到實戰(zhàn)》

1.2 定時器

現(xiàn)在已經(jīng)知道了如何使用 label 顯示圖片,那么接下來我們制作一個圖片的自動切換功能,那么必然是需要定時去執(zhí)行圖片切換,又或者說我們需要一個功能可以去觸發(fā)圖片的切換,并且多張圖片的話,切換是重復執(zhí)行的,那么就需要一個定時重復執(zhí)行某個操作的功能。

好消息是在 Qt 中自帶了定時器,定時器是一個用于對任務執(zhí)行定時操作的功能,定時器本身存在于 QWidget 基類之中,由于我們在創(chuàng)建對應的項目后,其類是 QWidget 的子類,那么我們在這個類中就可以直接使用定時器。

那么此時我們需要兩個按鈕,一個用于定時器的開啟,另一個按鈕用于定時器的關(guān)閉,在此創(chuàng)建兩個 pushButton 在 Qt 界面之上,并且更改對應的文本:

二、Qt定時器與文本編輯器制作《QT 入門到實戰(zhàn)》

接著我們點擊開始按鈕觸發(fā)定時器,那么必然是有一個信號(點擊),與一個槽函數(shù),在此右鍵開始按鈕選擇轉(zhuǎn)到槽,選擇 click 事件:

二、Qt定時器與文本編輯器制作《QT 入門到實戰(zhàn)》
二、Qt定時器與文本編輯器制作《QT 入門到實戰(zhàn)》

轉(zhuǎn)到槽函數(shù)后,我們可以使用以下的代碼開啟定時器:

this->startTimer();

以上代碼中的 startTimer就是表示開啟一個定時器,startTimer 在此還需要傳入一個間隔參數(shù)用來設(shè)定間隔的時間,這個時間是以毫秒為單位的,若你設(shè)置1s 那么則需要寫成 1000:

this->startTimer(1000);

那接下來如何完成圖片的切換呢?這時我們需要重寫一個方法 timerEvent,timerEvent 方法時定時器響應后所執(zhí)行的函數(shù),其本身存在但需要重寫。

此時我們回到 .h 頭文件中聲明:

virtual void timerEvent(QTimerEvent *event);

二、Qt定時器與文本編輯器制作《QT 入門到實戰(zhàn)》

接著回到 .cpp 文件中對此方法進行重寫:

二、Qt定時器與文本編輯器制作《QT 入門到實戰(zhàn)》

void MainWindow::timerEvent(QTimerEvent *event){
    
}

在 .cpp 文件中添加以上函數(shù)后,我們需要在這個函數(shù)中編寫切換圖片的代碼。

此時假如我們有一個文件夾是用于存儲需要切換的圖片地址,那么我們創(chuàng)建一個 QString 對象進行存儲:

QString path("D:\\developer\\QT\\pro\\01\\04\\04\\img\\");

此時我對應的目錄下,文件名是如下格式:

二、Qt定時器與文本編輯器制作《QT 入門到實戰(zhàn)》
那么在此我可以創(chuàng)建一個變量,這個變量是一個整形變量,用于代表文件名,但是由于每次都需要在之前的名稱基礎(chǔ)上往上加1,那么我就不能這個定時器觸發(fā)函數(shù)內(nèi)進行創(chuàng)建,需要在外部創(chuàng)建這個變量,首先到頭文件中進行聲明:

int picId;

二、Qt定時器與文本編輯器制作《QT 入門到實戰(zhàn)》

接著再到 cpp 文件中賦初值:

picId=1;

二、Qt定時器與文本編輯器制作《QT 入門到實戰(zhàn)》

那么此時對于一個圖片路徑的編寫就可以由最開始的 path 文件夾路徑加上文件名已經(jīng)文件名后綴即可,那么就可以寫成:

path+=QString::number(picId);
path+=".png";

由于 picId 是 number 類型,并不能直接的對字符串進行拼接,在這里使用 QString::number() 方法對其進行類型轉(zhuǎn)化。

現(xiàn)在圖片路徑有了,那么接下來必然是現(xiàn)實對應的圖片,現(xiàn)實圖片我們跟之前的方式一樣,創(chuàng)建一個 QPixmap 并且指定對應的 ui 對象 label 對其進行顯示即可,代碼如下:

QPixmap pix(path);
ui->label->setPixmap(pix);

接下來圖片的名稱進行增加:

picId++;

這樣就可以繼續(xù)下一張圖片了,但在此需要注意,咱們的圖片只有3張,那么我們需要使圖片索引在超過上限時從頭開始,那么就需要進行判斷:

picId++;
if(4==picId){
   picId=1;
}

此時該函數(shù)的所有代碼如下:

void MainWindow::timerEvent(QTimerEvent *event){
    QString path("D:\\developer\\QT\\pro\\01\\04\\04\\img\\");
    path+=QString::number(picId);
    path+=".png";
    QPixmap pix(path);
    ui->label->setPixmap(pix);
    picId++;
    if(4==picId){
        picId=1;
    }
}

此時運行項目點擊開始后,圖片會發(fā)生改變:

二、Qt定時器與文本編輯器制作《QT 入門到實戰(zhàn)》

1.3 結(jié)束定時

接下來我們還需要使這個定時器結(jié)束定時,我們需要使用 killTimer 方法,這個方法本身繼承自 QWidget 父類,所以直接使用 this 調(diào)用即可,那么代碼如下:

this->killTimer();

但此時使用 killTimer 會出現(xiàn)錯誤,killTimer 需要一個某個定時器的 id 作為參數(shù),指定你 kill 掉這個定時器。那定時器 id 如何拿到呢?其實在 startTimer 時將會返回一個定時器 id ,將這個 id 存儲起來即可,由于是不同函數(shù)內(nèi)都需要使用這個 id,那么此時我們需要在頭文件中創(chuàng)建一個變量對這個 id 進行存儲:

二、Qt定時器與文本編輯器制作《QT 入門到實戰(zhàn)》
接著使用這個變量存儲定時器的 id:

二、Qt定時器與文本編輯器制作《QT 入門到實戰(zhàn)》

接著給結(jié)束按鈕一個槽函數(shù):

二、Qt定時器與文本編輯器制作《QT 入門到實戰(zhàn)》
在這個函數(shù)中使用 killTimer 方法傳入定時器 id 即可:

void MainWindow::on_pushButton_2_clicked()
{
    this->killTimer(timerId);
}

二、文本編輯器制作

在本章第二點的學習中,我們通過學習文本編輯器制作,從而了解 一般的文件、QFileDialog 以及 鞏固自定義事件與槽的知識。

2.1 UI 設(shè)計

在正式敲代碼之前,我們創(chuàng)建一個項目,設(shè)計一下整體的文本編輯器頁面。創(chuàng)建好項目后,我們拖動一個 text 的控件拖動到界面之中:

二、Qt定時器與文本編輯器制作《QT 入門到實戰(zhàn)》
在一般的文本編輯器中,一般以文本編輯為主要功能,接下來我們需要使整個文本編輯器占據(jù)整個 UI 的空間區(qū)域,那如何進行操作呢?若我們直接設(shè)置大小使文本編輯控件以及對應的窗口大小相等,那么這個程序的整個窗口都不能夠進行拖放,當在某些設(shè)備上整體窗口會導致一些困擾;例如程序界面過大、過小等情況,由于不可拖動大小對用戶并不友好。此時我們可以點擊整個整個窗口,給整個窗口一個垂直布局,給與垂直布局后,這個窗體內(nèi)的所有空間將會遵從于這個布局,會使整個空間占據(jù)整個寬度,那么在運行之后拖動窗體改變窗體大小,由于窗體內(nèi)的控件遵循垂直布局的規(guī)則,那么窗體內(nèi)的控件將會遵循父窗體的大小而發(fā)生改變,這樣就很好的解決了窗口過大、過小而不能更改的問題了。

此時點擊整個窗體程序:

二、Qt定時器與文本編輯器制作《QT 入門到實戰(zhàn)》
選中整個窗體后,這個窗體將會在周圍又藍色小點代表選中,接下來我們點擊對應的垂直布局:

二、Qt定時器與文本編輯器制作《QT 入門到實戰(zhàn)》
點擊完畢后整個空間將會占滿窗體(這是因為只有一個控件的原因):

二、Qt定時器與文本編輯器制作《QT 入門到實戰(zhàn)》
接著我們給與對應的菜單添加按鈕功能。雙擊菜單(menubar)可更改名稱:

二、Qt定時器與文本編輯器制作《QT 入門到實戰(zhàn)》
輸入如下截圖的內(nèi)容:

二、Qt定時器與文本編輯器制作《QT 入門到實戰(zhàn)》
按下 enter 鍵后對應的 &(取地址符)將會消失:

二、Qt定時器與文本編輯器制作《QT 入門到實戰(zhàn)》

這是因為此時在此處輸入對應的取地址符加上某一個“按鍵”,那么則表示對應的快捷鍵,例如你在程序之中按下 F 那么將會與點擊這個 menu 有相同的操作。

接著我們加入打開文件的 menu :

二、Qt定時器與文本編輯器制作《QT 入門到實戰(zhàn)》
再接著添加對應的另存為 menu :

二、Qt定時器與文本編輯器制作《QT 入門到實戰(zhàn)》

還有一個新建文件 menu 忘記添加了,在此添加上:

二、Qt定時器與文本編輯器制作《QT 入門到實戰(zhàn)》

再接著我們更改一下對應的菜單名稱,在 ui 設(shè)計窗口右上角更改對應的打開和另存為 menu 名稱:

二、Qt定時器與文本編輯器制作《QT 入門到實戰(zhàn)》

2.2 新建文件

接下來咱們開始編寫新建文件操作的功能。

一般新建文件指的是在在窗體之內(nèi)新建一個文件文檔,此時對于文本編輯框的內(nèi)容是需要清空的,并且文件名也要做一個提示,此時我們給與這個 new_Action 一個自定義的事件與槽。

因為此時你右鍵這些 menu 并不能直接轉(zhuǎn)到對應的事件槽,所以此時我們需要對應的 connect 函數(shù)進行自定義。

此時我們回到 .h 頭文件中,對我們自定義的槽函數(shù)進行聲明:

二、Qt定時器與文本編輯器制作《QT 入門到實戰(zhàn)》

private slots:
    void newActionSlot();

由于此時我們沒有給某一個控件一個槽函數(shù),所以此時我們需要自己編寫 private 對槽函數(shù)的權(quán)限進行修飾,并且聲明對應的函數(shù)。

接著定義完畢后我們需要在 cpp 文件中對其進行實現(xiàn):

二、Qt定時器與文本編輯器制作《QT 入門到實戰(zhàn)》

void MainWindow::newActionSlot(){
}

實現(xiàn)后我們使用 connect 對 new_Action 新建文件操作 ui 綁定對應的槽函數(shù):

二、Qt定時器與文本編輯器制作《QT 入門到實戰(zhàn)》

connect(ui->new_Action,&QAction::triggered,this,&MainWindow::newActionSlot);

此時 connect 中 &QAction::triggered 是指 action 的點擊事件,并且綁定了一個 newActionSlot 槽函數(shù),有關(guān) QAction 我們可以在 ui 設(shè)計框右上角可以看到 new_Action 是屬于一個 Action 對象:

二、Qt定時器與文本編輯器制作《QT 入門到實戰(zhàn)》

接著,當點擊了新建文件的 action 后,我們需要對應的清空文本編輯框的內(nèi)容,并且更改當前的 Windows 程序的窗體 title,使其有一個提示,那么槽函數(shù)的代碼可以寫成如下:

void MainWindow::newActionSlot(){
    ui->textEdit->clear();
    this->setWindowTitle("新建文本.txt");
}

以上代碼中 setWindowTitle 表示設(shè)置當前的窗體程序的標題。我們此時運行程序,在文本編輯框中輸入一些內(nèi)容,隨后點擊文件選擇新建文件,之后將會看見窗體程序的標題發(fā)生了改變,并且文本編輯框的內(nèi)容已被清空:

二、Qt定時器與文本編輯器制作《QT 入門到實戰(zhàn)》

2.3 打開文件

打開文件的前置操作跟新建文件的操作一樣,需要在頭文件中聲明槽函數(shù)、在 cpp 文件中實現(xiàn)槽函數(shù) 以及使用 connect 方法連接 menu 以及槽函數(shù)。

首先在 .h 文件中聲明:

二、Qt定時器與文本編輯器制作《QT 入門到實戰(zhàn)》
接著就是在 cpp 文件中實現(xiàn)以及使用 connect 自定義事件與槽:

二、Qt定時器與文本編輯器制作《QT 入門到實戰(zhàn)》
那么接下來我們?nèi)绾未蜷_文件呢?此時我們需要使用 QFileDialog 類的一個方法打開一個資源選擇框,這個方法是 getOpenFileName;首先我們需要在頭文件中使用 include 對其引入:

二、Qt定時器與文本編輯器制作《QT 入門到實戰(zhàn)》

#include <QFileDialog>

隨后在 openActionSlot 槽函數(shù)中使用 QFileDialog 調(diào)用 getOpenFileName,其中 getOpenFileName 一般接收 4 個參數(shù),第一個是資源選擇框的父對象是誰,我們可以指定為 this 表示當前程序;第二個參數(shù)是一個提示語;第三個參數(shù)為資源選擇框打開后的默認路徑;第四個參數(shù)是打開后顯示哪些文件。

那么此時代碼寫成:

QFileDialog::getOpenFileName(this,"選擇一個文本",QCoreApplication::applicationFilePath(),"*.txt");

以上代碼中的 QCoreApplication::applicationFilePath() 則是表示取到當前的文件路徑,最后一個參數(shù)則是表示打開后指定顯示 txt 類型文件,此時運行程序后,點擊打開將會出現(xiàn)資源選擇框:

二、Qt定時器與文本編輯器制作《QT 入門到實戰(zhàn)》
當我們選擇某一個文件后,將會彈出對應的文件絕對路徑,我們可以使用一個 QString 進行存儲,方便接下來讀取到所選文件的內(nèi)容:

QString filename = QFileDialog::getOpenFileName(this,"選擇一個文本",QCoreApplication::applicationFilePath(),"*.txt");

若選擇文件時并未選中某個文件(取消選擇操作、關(guān)閉對話框等),其返回值為空,那么在正式讀取文件操作之前,我們需要對應的判斷當前是否選中文件,此時直接使用 if 判斷 filename 的內(nèi)容是否為 Empty 即可:

if(!filename.isEmpty()){
    
}

此時表示當 filename 不為空時發(fā)生操作。接著在 if 判斷內(nèi),創(chuàng)建一個 file 對象用于接下來對文件的讀取,并且在創(chuàng)建時就需要傳入 filename:

 QFile file(filename);

接著使用 open 方法對已“裝載”路徑的 file 對象進行 open,但是由于 open 對象時需要指定你是用什么模式進行讀取,可以進行只讀、只寫等操作,在這里只需要只讀,所以使用 QIODevice 方法傳入 ReadOnly 作為參數(shù)即可:

file.open(QIODevice::ReadOnly);

接著使用 file 對象的 readAll 方法可以一次性讀取其文本的內(nèi)容,并且使用 QByteArray 進行存儲;但是要注意,在大文件下不建議這樣操作,當前只是作為示例:

QByteArray buf   = file.readAll();

最后直接將這個 buf 轉(zhuǎn)為 string 后設(shè)置為 textEdit 的文本內(nèi)容并且關(guān)閉 file 讀取即可,此時這個槽函數(shù)的所有代碼如下:

void MainWindow::openActionSlot(){
    QString filename = QFileDialog::getOpenFileName(this,"選擇一個文本",QCoreApplication::applicationFilePath(),"*.txt");
    if(!filename.isEmpty()){
        QFile file(filename);
        file.open(QIODevice::ReadOnly);
        QByteArray buf   = file.readAll();
        ui->textEdit->setText(QString(buf));
        file.close();
    }
}

接著我們運行一下程序,選擇一個文本文件后進行打開,內(nèi)容將會顯示在當前的 textedit 之上:

二、Qt定時器與文本編輯器制作《QT 入門到實戰(zhàn)》

2.3 另存為

另存為功能的前置操作跟之前兩個功能一致,分別是頭文件聲明、cpp文件下實現(xiàn)以及connect 鏈接,在此簡述一下步驟。

聲明:

void saveActionSlot();

實現(xiàn):

void MainWindow::saveActionSlot(){

}

鏈接:

connect(ui->save_Action,&QAction::triggered,this,&MainWindow::saveActionSlot);

前置操作完畢后,我們著重了解如何實現(xiàn)保存功能。

保存功能跟打開文本文件操作類似,都是使用 QFileDialog 進行位置選擇,并且最終的保存也是使用 file 對象進行操作,畢竟一個是讀一個是寫都屬于 IO 操作。

既然類型,那么我們在進行保存時的流程都是要打開資源選擇框,選擇某一個位置進行內(nèi)容保存,那么鐵定是使用 Dialog,在之前是使用 getOpenFileName,是 open操作,那么此時就是 save ,那么就使用 getSaveFileName 方法:

QString filename = QFileDialog::getSaveFileName(this,"選擇一個文件",QCoreApplication::applicationFilePath(),"*.txt");

接著同樣是判斷是否為空:

if(!filename.isEmpty()){

}

接著是使用 file 文件對所選擇的位置和保存文件名進行操作,并且此時不是 read 而是 write :

QFile file(filename);
file.open(QIODevice::WriteOnly);

接著使用一個 QString 獲取當前的textEdit 的文本:

QString text = ui->textEdit->toPlainText();

創(chuàng)建一個 QByteArray 對象,并且將 textEdit 的文本轉(zhuǎn)為 QByteArray:

QByteArray ba=text.toUtf8();

隨后寫入文件,并且關(guān)閉文件即可,完整代碼如下:

void MainWindow::saveActionSlot(){
    QString filename = QFileDialog::getSaveFileName(this,"選擇一個文件",QCoreApplication::applicationFilePath(),"*.txt");
    if(!filename.isEmpty()){
        QFile file(filename);
        file.open(QIODevice::WriteOnly);
        QString text = ui->textEdit->toPlainText();
        QByteArray ba=text.toUtf8();
        file.write(ba);
        file.close();
    }
}

此時我們點擊保存后將會出現(xiàn)一個資源選擇框,我們選擇桌面路徑,隨后點擊保存即可對文件進行另存為操作:

二、Qt定時器與文本編輯器制作《QT 入門到實戰(zhàn)》

查看桌面,文件保存成功并且內(nèi)容已寫入:

二、Qt定時器與文本編輯器制作《QT 入門到實戰(zhàn)》

總結(jié)

本章節(jié)主要介紹了如何使用 qt 創(chuàng)建一個圖片瀏覽器以及一個文本編輯器,并且在其中使用 qt QFileDialog 對文件進行選擇已經(jīng)保存,鞏固了 qt 項目創(chuàng)建的基本流程;在此基礎(chǔ)上鞏固了信號與槽,在制作的過程中使用了垂直布局直接并有效的布局了整個 ui 界面。在此基礎(chǔ)上還學習了什么是 menu 以及什么是 menu 的 action,并且在 action 上通過使用取地址符的方式創(chuàng)建了對應的快捷按鈕,使其文本編輯器的操作更加的方便,這一節(jié)還學習了對應的定時器,了解了通過定時器可以對應的創(chuàng)建定時任務,例如制作一個壁紙切換的桌面、定時執(zhí)行一些重復操作等。文章來源地址http://www.zghlxwxcb.cn/news/detail-433962.html

到了這里,關(guān)于二、Qt定時器與文本編輯器制作《QT 入門到實戰(zhàn)》的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權(quán),不承擔相關(guān)法律責任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經(jīng)查實,立即刪除!

領(lǐng)支付寶紅包贊助服務器費用

相關(guān)文章

  • dede編輯器修改成純文本編輯器的方法

    dede編輯器修改成純文本編輯器的方法

    我在做優(yōu)秀啦網(wǎng)站大全的時候需要的正文內(nèi)容都不需要設(shè)置什么文字樣式,所以我需要把編輯器上的工具全部取消掉,包括會員投稿中的編輯器工具欄全部取消掉或者屏蔽隱藏掉,所以我需要把DEDE編輯器修改成純文本編輯器的方法如下: 如圖: 首先打開 /include/ckeditor/ckedi

    2024年02月16日
    瀏覽(24)
  • 【富文本編輯器實戰(zhàn)】04 菜單組件和編輯器的整合

    【富文本編輯器實戰(zhàn)】04 菜單組件和編輯器的整合

    在上一篇文章中,我們對整個編輯器項目的大體結(jié)構(gòu)有了一定的了解,主要分為菜單欄和編輯區(qū)。菜單欄包括了編輯器的主要文本操作功能,且菜單項是可配置的。編輯器界面顯示比較簡單,是一個可編輯的 div 區(qū)域。接下來我們就來把編輯器的整體框架搭建起來,讓其可以

    2024年01月24日
    瀏覽(38)
  • 【Qt】定時器處理——定時器事件類QTimerEvent和定時器類QTimer使用

    Qt的定時器只能通過純代碼實現(xiàn),定時器顧名思義,主要作用是定時特定的時間。 Qt提供了定時器事件類 QQTimerEvent 和定時器類 QTimer 實現(xiàn)定時器操作。 Qt提供了更高層次的定時器編程接口** QTimer **類,可以使用信號和槽,還可以設(shè)置定時一次。比較常用的方法有: QTimer::set

    2024年02月05日
    瀏覽(24)
  • 富文本編輯器

    富文本編輯器

    啥是富文本編輯器,就是下面這個東西: 1.那這玩意兒怎么安裝和配置: 2. 通過(在終端里輸入)? npm install?vue-quill-editor --save? 安裝 3.具體的在項目里的配置過程可以看最新的官方文檔vue-quill-editor · Quill官方中文文檔 · 看云 4.這里先簡單說下怎么配置,首先在main里輸入:

    2024年02月10日
    瀏覽(20)
  • Vim文本編輯器

    Vim文本編輯器

    目錄 一、Vim文本編輯器?? 1.1、什么是Vim文本編輯器 1.2、Vim文本編輯器基本格式 1.3、Vim的三種模式及切換 ?二、命令模式 2.1、Vim的進入與退出 2.2、命令模式下光標跳轉(zhuǎn)的快捷鍵 2.3、常用命令集合 三、編輯模式 四、末行模式 Linux 系統(tǒng)中“一切皆文件”,因此當我們要更改

    2024年02月10日
    瀏覽(28)
  • 【Electron】富文本編輯器之文本粘貼

    【Electron】富文本編輯器之文本粘貼

    由于這個問題導致,從其他地方復制來的內(nèi)容 粘貼發(fā)送之后都會多一個 換行 在發(fā)送的時候如果直接,發(fā)送innerHTML 就 可以解決 Electron h5 Andriod 都沒問題,但是 公司的 IOS 端 不支持,且不提供支持(做不了。)。 于是,繼續(xù)想辦法。 把單純的富文本插入操作,改一下,只粘

    2024年02月03日
    瀏覽(23)
  • 15 文本編輯器vim

    15 文本編輯器vim

    ? ? ? ? 如果file.txt就是修改這個文件,如果不存在就是新建一個文件。 ?????????使用vim建完文件后,會自動進入文件中。? ????????底部要是顯示插入,是編輯模式; ????????按esc,底部要是空白的,則是進入命令模式,可以輸入一些快捷鍵進行操作,比如說

    2024年02月15日
    瀏覽(23)
  • 簡版的富文本編輯器、VUE+ElementUI 富文本編輯器 element ui富文本編輯器的使用(quill-editor) 不好用你來打我!全網(wǎng)醉簡單!要復雜的別來!

    簡版的富文本編輯器、VUE+ElementUI 富文本編輯器 element ui富文本編輯器的使用(quill-editor) 不好用你來打我!全網(wǎng)醉簡單!要復雜的別來!

    實現(xiàn)效果 ? 1.安裝插件 npm install vue-quill-editor --save 2.安裝成功后在package.json中查看 3.在main.js中全局引入插件 4.頁面實現(xiàn) 感謝老哥:?ElementUI生成富文本編輯器 https://blog.csdn.net/keplerm/article/details/123379511?spm=1001.2101.3001.6650.9utm_medium=distribute.pc_relevant.none-task-blog-2%7Edefault%7EBlogCom

    2024年02月16日
    瀏覽(29)
  • Qt 定時器

    Qt 定時器

    startTimer(); 注意:定時器參數(shù)要是全局或者靜態(tài)變量。 ? 沒有結(jié)束函數(shù) int timerId=startTimer(); startTimer()返回定時器標志 需設(shè)置為類的成員--類內(nèi)使用 通過定時器事件判斷 ? QTimer類事件間隔到達 QTimer不需要ID,只需要對象不同就可以區(qū)別定時器。 start() stop() ? ? timer=new QTimer(thi

    2024年02月09日
    瀏覽(22)
  • Linux文本編輯器-vim

    目錄 前言 Vim三種模式 打開方式 命令模式 插入模式 可視模式 保存和退出 Vim是一個功能豐富且強大的文本編輯器,被廣泛用于Linux系統(tǒng)。它是Vi的增強版本,提供了更多的功能和改進,同時可以通過插件擴展其功能; 「命令模式」:可以進行刪除、復制、粘貼等快捷操作。

    2024年02月15日
    瀏覽(34)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包