Linux書簽上下移動方式
更新時(shí)間:2025年03月20日 10:13:27 作者:海天鷹
這篇文章主要介紹了Linux書簽上下移動方式,具有很好的參考價(jià)值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
Linux書簽上下移動
步驟
讀書簽文件,分割到QStringList,點(diǎn)擊右鍵菜單獲取序號,交換序號,寫書簽文件。
QStringList.swap(int, int) 過時(shí),QStringList.swapItemsAt(int, int) 代替。
書簽文件路徑
- mainwindow.h
const QString filepath_bookmark = QStandardPaths::writableLocation(QStandardPaths::ConfigLocation) + "/gtk-3.0/bookmarks";
上移
connect(action_bookmark_move_up, &QAction::triggered, [=](){
QTreeWidgetItem *TWI = ui->treeWidget_nav->currentItem();
int index = TWI_bookmark->indexOfChild(TWI);
QFile file(filepath_bookmark);
if (file.open(QFile::ReadWrite)) {
QTextStream TS(&file);
QString s = TS.readAll();
QStringList SL = s.split("\n");
SL.swapItemsAt(index, index - 1);
s = "";
for (int i=0; i<SL.length(); i++) {
s += SL.at(i);
if (i < SL.length() - 1)
s += "\n";
}
file.resize(0);
TS << s;
file.close();
}
});下移
- swap -1 改成 +1,其他一樣。
connect(action_bookmark_move_down, &QAction::triggered, [=](){
QTreeWidgetItem *TWI = ui->treeWidget_nav->currentItem();
int index = TWI_bookmark->indexOfChild(TWI);
QFile file(filepath_bookmark);
if (file.open(QFile::ReadWrite)) {
QTextStream TS(&file);
QString s = TS.readAll();
QStringList SL = s.split("\n");
SL.swapItemsAt(index, index + 1);
s = "";
for (int i=0; i<SL.length(); i++) {
s += SL.at(i);
if (i < SL.length() - 1)
s += "\n";
}
file.resize(0);
TS << s;
file.close();
}
});監(jiān)視到書簽文件變化更新書簽樹
QFileSystemWatcher只觸發(fā)一次
- 百度AI回答:
- 只能觸發(fā)一次,如果需要持續(xù)觸發(fā),需要在處理完觸發(fā)后,再次添加路徑。
const QString filepath_bookmark = QStandardPaths::writableLocation(QStandardPaths::ConfigLocation) + "/gtk-3.0/bookmarks";
QFileSystemWatcher *watcher = new QFileSystemWatcher;
watcher->addPath(filepath_bookmark);
connect(watcher, &QFileSystemWatcher::fileChanged, [=]{
genBookmark();
watcher->addPath(filepath_bookmark);
});總結(jié)
以上為個人經(jīng)驗(yàn),希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
Linux中Curl參數(shù)詳解實(shí)踐應(yīng)用
在現(xiàn)代網(wǎng)絡(luò)開發(fā)和運(yùn)維工作中,curl 命令是一個不可或缺的工具,它是一個利用 URL 語法在命令行下工作的文件傳輸工具,支持多種協(xié)議,如 HTTP、HTTPS、FTP 等,本文給大家介紹了Linux中Curl參數(shù)詳解實(shí)踐應(yīng)用,需要的朋友可以參考下2025-01-01
centos服務(wù)器下nginx圖片防盜鏈設(shè)置方法
本篇文章主要介紹了centos服務(wù)器下nginx防盜鏈設(shè)置方法,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2017-03-03
Linux中 CentOS 6.5 手動升級gcc到gcc-6.1.0
這篇文章主要介紹了Linux中 CentOS 6.5 手動升級gcc到gcc-6.1.0的相關(guān)資料,非常不錯具有參考借鑒價(jià)值,需要的朋友可以參考下2016-10-10
Linux遠(yuǎn)程登錄實(shí)現(xiàn)教程解析
這篇文章主要介紹了Linux遠(yuǎn)程登錄實(shí)現(xiàn)教程解析,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-05-05
linux下使用cmake編譯安裝mysql的詳細(xì)教程
這篇文章主要介紹了linux下使用cmake編譯安裝mysql的詳細(xì)教程,非常不錯,具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2019-10-10

