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

Qt雙擊某一文件通過自己實(shí)現(xiàn)的程序打開,并加載文件顯示

這篇具有很好參考價(jià)值的文章主要介紹了Qt雙擊某一文件通過自己實(shí)現(xiàn)的程序打開,并加載文件顯示。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問。

簡(jiǎn)述

在Windows系統(tǒng)中,雙擊某類擴(kuò)展名的文件,通過自己實(shí)現(xiàn)的程序打開文件,并正確加載及顯示文件。有兩種方式可以到達(dá)這個(gè)目的。
對(duì)于系統(tǒng)不知道的擴(kuò)展名的文件,第一次打開時(shí),需要自行設(shè)置打開方式。
設(shè)置流程:
右鍵或雙擊文件->打開方式,彈出以下界面
Qt雙擊某一文件通過自己實(shí)現(xiàn)的程序打開,并加載文件顯示,Qt記錄,Qt編程,qt,開發(fā)語(yǔ)言
點(diǎn)擊“在這臺(tái)電腦上查找其他應(yīng)用”,選擇自己的可執(zhí)行程序即可。

方法一

方法一是通過參數(shù)個(gè)數(shù)及參數(shù)進(jìn)行設(shè)置雙擊啟動(dòng)。

// #include <QElapsedTimer>
int main(int argc, char *argv[])
{
    QApplication a("xxxxx", argc, argv);
    MainWindow w;
    // 通過參數(shù)個(gè)數(shù)及參數(shù)進(jìn)行設(shè)置雙擊啟動(dòng)
    {
        if(argc > 1)
        {
            QString strOpenPath = QString(argv[1]);
            if(!strOpenPath.isEmpty())
            {
            	// 將“\”轉(zhuǎn)換成"/",因?yàn)?\"系統(tǒng)不認(rèn)
                strOpenPath = strOpenPath.replace("\\", "/");
                // 具體實(shí)現(xiàn)在下面這個(gè)函數(shù)
                w.load(strOpenPath);
            }
        }
    }
    w.showMaximized();
    return a.exec();
}

通過以上配置,再實(shí)現(xiàn)load()函數(shù),就可雙擊打開某一擴(kuò)展名的文件。

方法二

方法二是通過注冊(cè)表實(shí)現(xiàn)雙擊打開方式,具體實(shí)現(xiàn)如下,代碼可復(fù)制運(yùn)行。

#include "mainwindow.h"
#include <QApplication>
#include <QSettings>

void dectionRegedit(const QString& strClassName, const QString& strAppPath, const QString& strExt, const QString& strExtDescri)
{
    QString strBaseUrl("HKEY_CURRENT_USER\\Software\\Classes");
    QSettings setting(strBaseUrl, QSettings::NativeFormat);

    setting.setValue("/" + strClassName + "/Shell/Open/Command/.", "\"" + strAppPath + "\" \"%1\"");
    setting.setValue("/" + strClassName + "/.", strExtDescri);
    setting.setValue("/" + strClassName + "/DefaultIcon/.", strAppPath + ",0");
    // 關(guān)聯(lián)ext 和 類別
    setting.setValue("/" + strExt + "/OpenWithProgIds/" + strClassName, "");
    // 立即保存該修改
    setting.sync();
}

int main(int argc, char *argv[])
{
    QApplication a(argc, argv);
    MainWindow w;
	if(argc > 1){
		// 具體實(shí)現(xiàn)
    	w.load(argv[1]);
	}
    w.show();
	// 通過注冊(cè)表實(shí)現(xiàn)
    QString strAppPath = QApplication::applicationDirPath().append("/debug/doubleClickedFileTest0822.exe");
    strAppPath.split("/").join("\\");
    QString strClassName("MainWindow");
    QString strExt(".txt");
    QString strExtDescri("fileTest 工程文件");

    dectionRegedit(strClassName, strAppPath, strExt, strExtDescri);

    return a.exec();
}

注意

一定要注意路徑。文章來源地址http://www.zghlxwxcb.cn/news/detail-669308.html

到了這里,關(guān)于Qt雙擊某一文件通過自己實(shí)現(xiàn)的程序打開,并加載文件顯示的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

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

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • QT通過QPdfWriter類實(shí)現(xiàn)pdf文件生成與輸出

    QT通過QPdfWriter類實(shí)現(xiàn)pdf文件生成與輸出

    一.QPdfWriter類介紹 本文代碼工程下載地址: https://download.csdn.net/download/xieliru/88736664?spm=1001.2014.3001.5503 QPdfWrite是一個(gè)用于創(chuàng)建PDF文件的類,它是Qt庫(kù)的一部分。它提供了一些方法和功能,使您能夠創(chuàng)建和寫入PDF文件。 QPdfWriter的一些主要功能: 1. 創(chuàng)建PDF文件:通過使用QPdfWrit

    2024年02月02日
    瀏覽(18)
  • QT 實(shí)現(xiàn)tablewidget整行的上下移動(dòng)和雙擊編輯

    QT 實(shí)現(xiàn)tablewidget整行的上下移動(dòng)和雙擊編輯

    一、效果展示 二、實(shí)現(xiàn)方法 1、先對(duì)tablewidget設(shè)置 2、實(shí)現(xiàn)行的上下移動(dòng) 主要實(shí)現(xiàn)方式是通過交換兩行的數(shù)據(jù)來實(shí)現(xiàn)的 下面這兩句主要實(shí)現(xiàn)選擇行跟隨移動(dòng)的行

    2024年02月11日
    瀏覽(21)
  • Qt 使用QLabel的派生類實(shí)現(xiàn)QLabel的雙擊響應(yīng)

    Qt 使用QLabel的派生類實(shí)現(xiàn)QLabel的雙擊響應(yīng)

    ? ? ? ? 在QLabel中沒有雙擊等事件響應(yīng),需要 構(gòu)建其 派生類 ,自定義 信號(hào)(signals) 、重載 事件函數(shù)(event) ,最后在Qwidget中 使用connect鏈接即可 ,進(jìn)而實(shí)現(xiàn)響應(yīng)功能。 ? ? ? ? 對(duì)于其余沒有需求事件響應(yīng)的QObject同樣適用。 ? ? ? ? 此外,該功能同樣可以 使用 事件過濾器 ,

    2024年02月13日
    瀏覽(19)
  • QT學(xué)習(xí)筆記-Linux ARM環(huán)境下實(shí)現(xiàn)QT程序通過ODBC驅(qū)動(dòng)訪問SQLServer數(shù)據(jù)庫(kù)

    QT學(xué)習(xí)筆記-Linux ARM環(huán)境下實(shí)現(xiàn)QT程序通過ODBC驅(qū)動(dòng)訪問SQLServer數(shù)據(jù)庫(kù)

    在嵌入式系統(tǒng)中使用QT開發(fā)上位機(jī)應(yīng)用時(shí)不可避免的會(huì)涉及訪問各種數(shù)據(jù)庫(kù)的場(chǎng)景,而服務(wù)端數(shù)據(jù)庫(kù)的種類則有多種可能(Oracle、Postgresql、MySql、SQLServer),本文就介紹一下如何實(shí)現(xiàn)在Linux Arm環(huán)境下實(shí)現(xiàn)QT程序通過ODBC驅(qū)動(dòng)訪問SQLServer數(shù)據(jù)庫(kù)的。 開發(fā)環(huán)境操作系統(tǒng):windows10專業(yè)

    2024年02月12日
    瀏覽(31)
  • Qt中的配置文件:實(shí)現(xiàn)個(gè)性化應(yīng)用程序配置與保存加載

    在現(xiàn)代軟件開發(fā)中,用戶對(duì)于應(yīng)用程序的個(gè)性化配置和設(shè)置變得越來越重要。為了滿足用戶需求并提供更好的用戶體驗(yàn),開發(fā)人員常常需要實(shí)現(xiàn)一種機(jī)制,以便在每次啟動(dòng)應(yīng)用程序時(shí)能夠記住用戶上次的配置。這樣用戶就可以方便地恢復(fù)到他們熟悉的環(huán)境,無需重新進(jìn)行所有

    2024年02月11日
    瀏覽(31)
  • Qt 自定義窗口的標(biāo)題欄,重寫鼠標(biāo)事件實(shí)現(xiàn),關(guān)閉隱藏,最大化/最小化,重寫窗口事件函數(shù),實(shí)現(xiàn)鼠標(biāo)選中邊框拉大拉小,雙擊標(biāo)題欄切換窗口最大化和最小化

    Qt 自定義窗口的標(biāo)題欄,重寫鼠標(biāo)事件實(shí)現(xiàn),關(guān)閉隱藏,最大化/最小化,重寫窗口事件函數(shù),實(shí)現(xiàn)鼠標(biāo)選中邊框拉大拉小,雙擊標(biāo)題欄切換窗口最大化和最小化

    Qt 自定義窗口的標(biāo)題欄,重寫鼠標(biāo)事件實(shí)現(xiàn),關(guān)閉隱藏,最大化/最小化,重寫窗口事件函數(shù),實(shí)現(xiàn)鼠標(biāo)選中邊框拉大拉小,雙擊標(biāo)題欄切換窗口最大化和最小化 1、main.cpp 2、widget.h 3、widget.cpp 4、效果展示 5、完成

    2024年02月16日
    瀏覽(93)
  • qt:通過命令壓縮zip文件

    zip -j 的-j表示不含路徑 stat 判斷文件大小

    2024年02月16日
    瀏覽(27)
  • qt通過QFileDialog獲取文件路徑&保存文件&選擇文件夾

    ????????QT是一款常用的UI設(shè)計(jì)工具, 我們?cè)谌粘i_發(fā)中經(jīng)常需要對(duì)文件或者文件夾進(jìn)行操作,下面將介紹QT對(duì)于獲取文件路徑保存文件選擇文件夾等場(chǎng)景的獲取的偽代碼.? 注:適用于各語(yǔ)言的QT,比如python的pyQT之類的 保存文件: 根據(jù)指定文件夾找對(duì)應(yīng)文件: 另存為:

    2024年02月06日
    瀏覽(92)
  • 嵌入式Qt-動(dòng)手編寫并運(yùn)行自己的第1個(gè)ARM-Qt程序

    嵌入式Qt-動(dòng)手編寫并運(yùn)行自己的第1個(gè)ARM-Qt程序

    介紹了如何搭建在Linux開發(fā)板中搭建Qt的運(yùn)行環(huán)境,并測(cè)試了Qt自帶的例程。 本篇,來介紹如何自己編寫一個(gè)Qt程序,并將編譯結(jié)果放到Linux開發(fā)板中運(yùn)行。 因?yàn)镼t是支持跨平臺(tái)的,所以我們可以先在Windows平臺(tái)上編寫和查看Qt的運(yùn)行效果,然后再通過交叉編譯,編譯出ARM Linux平

    2024年02月02日
    瀏覽(21)
  • 用QT實(shí)現(xiàn)自己的UI界面

    用QT實(shí)現(xiàn)自己的UI界面

    對(duì)剛?cè)腴T的QT小白做一些基礎(chǔ)知識(shí)總結(jié),希望能幫助到你。 1,概念:QT是做UI界面的,一個(gè)跨平臺(tái)的開發(fā)軟件,使用QT改進(jìn)了的C++語(yǔ)言進(jìn)行開發(fā),所以面向?qū)ο?,開發(fā)效率高。 2,模塊 首先要理解QT中的 信號(hào)與槽 ,sender每發(fā)送一個(gè)信號(hào)都有一個(gè)對(duì)應(yīng)的槽函數(shù)來接收信號(hào),所以

    2024年02月13日
    瀏覽(23)

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

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

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

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包