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

[QT]設(shè)置程序僅打開一個,再打開就喚醒已打開程序的窗口

這篇具有很好參考價值的文章主要介紹了[QT]設(shè)置程序僅打開一個,再打開就喚醒已打開程序的窗口。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

需求:speedcrunch 這個軟件是開源的計算器軟件。配合launch類軟件使用時,忘記關(guān)閉就經(jīng)常很多窗口,強(qiáng)迫癥,從網(wǎng)上搜索對版本進(jìn)行了修改。

#include "gui/mainwindow.h"

#include <QCoreApplication>
#include <QApplication>

#include <QSharedMemory>
#include <QMessageBox>

#include <Windows.h>
#include <WinUser.h>

int main(int argc, char* argv[])
{
    QApplication application(argc, argv);

    static QSharedMemory *singleApp = new QSharedMemory("SingleApp");//創(chuàng)建“SingleApp”的共享內(nèi)存塊
    if(!singleApp->create(1))//創(chuàng)建失敗,說明已經(jīng)有一個程序運行,
    {
        //彈出提示框注意:該提示應(yīng)該在 qApp->quit();之前,否則提示框?qū)婚W而過
        //QMessageBox::information(NULL,"tips","The program is already running");
        QString name = "Qt5152QWindowIcon";//窗口的類名
        QString windowname = "SpeedCrunch";//窗口標(biāo)題名
        HWND hwnd = FindWindow((LPCWSTR)name.unicode(),(LPCWSTR)windowname.unicode());//查找窗口句柄
        if (hwnd == 0) {
             QMessageBox::information(NULL,"tips","not find wind");
        }
        
        ShowWindow(hwnd,  SW_RESTORE);//激活并置頂窗口,ShowWindow里面的參數(shù)可以網(wǎng)上搜一下,不同功能不同參數(shù)
        SetForegroundWindow(hwnd);
        
        qApp->quit();//退出當(dāng)前程序
        return -1;
    }

    QCoreApplication::setApplicationName("SpeedCrunch");
    QCoreApplication::setOrganizationDomain("speedcrunch.org");

    MainWindow window;
    window.show();

    application.connect(&application, SIGNAL(lastWindowClosed()), &application, SLOT(quit()));

    return application.exec();
}

差異圖下圖:

[QT]設(shè)置程序僅打開一個,再打開就喚醒已打開程序的窗口,qt,microsoft,開發(fā)語言

findwindow的方法需要添加user32的庫,因為speedcrunch已經(jīng)添加,則在編譯文件中未改動。?

效果:

[QT]設(shè)置程序僅打開一個,再打開就喚醒已打開程序的窗口,qt,microsoft,開發(fā)語言

?文章來源地址http://www.zghlxwxcb.cn/news/detail-682700.html

到了這里,關(guān)于[QT]設(shè)置程序僅打開一個,再打開就喚醒已打開程序的窗口的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

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

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

相關(guān)文章

  • Qt 設(shè)置窗口背景

    窗口背景無非兩種:背景色、背景圖片。Qt中窗口背景如何設(shè)置? 一、QPalette設(shè)置背景 二、實現(xiàn)paintEvent,使用QPainter來繪制背景 三、使用QSS來設(shè)置背景 ?關(guān)于QSS的使用不想多說,一般我不用QSS設(shè)置窗口背景,也不建議使用。(注意:這里是對于窗口而言)。如果是子部件當(dāng)然

    2024年02月11日
    瀏覽(22)
  • qt 窗口實現(xiàn)打開文件夾瀏覽資源(純代碼實現(xiàn),后附代碼)

    qt 窗口實現(xiàn)打開文件夾瀏覽資源(純代碼實現(xiàn),后附代碼)

    ?新建 widget 項目可參考 QT入門初學(xué)者——如何新建一個工程項目(詳細(xì))_guuuuug的博客-CSDN博客_qt新建工程 ? 實現(xiàn)界面,點擊瀏覽會打開文件夾 選中文件,窗口顯示文件名,文件路徑 過長的文字會在最后顯示...,鼠標(biāo)懸浮在文字欄會顯示全部文字。 點擊右下角打開可以實現(xiàn)打

    2024年02月11日
    瀏覽(18)
  • 如何使用Qt創(chuàng)建一個新窗口?

    如何使用Qt創(chuàng)建一個新窗口? 在Qt中,我們可以使用QML語言輕松創(chuàng)建圖形界面。如果需要創(chuàng)建一個新的窗口,我們可以使用Qt.createComponent來創(chuàng)建一個新組件并將其添加到主窗口中。下面是一個簡單的例子。 在這個例子中,我們創(chuàng)建了一個主窗口,并在其中添加了一個按鈕。當(dāng)

    2024年02月11日
    瀏覽(19)
  • 06-3_Qt 5.9 C++開發(fā)指南_多窗體應(yīng)用程序的設(shè)計(主要的窗體類及其用途;窗體類重要特性設(shè)置;多窗口應(yīng)用程序設(shè)計)

    06-3_Qt 5.9 C++開發(fā)指南_多窗體應(yīng)用程序的設(shè)計(主要的窗體類及其用途;窗體類重要特性設(shè)置;多窗口應(yīng)用程序設(shè)計)

    常用的窗體基類是QWidget、QDialog 和QMainWindow,在創(chuàng)建 GUI應(yīng)用程序時選擇窗體基類就是從這 3 個類中選擇。QWidget 直接繼承于 QObject,是 QDialog 和 QMainWindow 的父類,其他繼承于 QWidget 的窗體類還有 QSplashScreen、QMdiSubWindow和QDesktopWidget。另外還有一個類QWindow,它同時從 QObject 和Q

    2024年02月13日
    瀏覽(26)
  • qt設(shè)置tableview單元大小跟隨窗口變化

    qt設(shè)置tableview單元大小跟隨窗口變化

    設(shè)置效果過于離奇。 右側(cè)為代碼設(shè)置顯示效果

    2024年02月11日
    瀏覽(31)
  • C++,使用Qt設(shè)計一個登錄窗口

    C++,使用Qt設(shè)計一個登錄窗口

    要求如下: 1、給窗體改變名稱并設(shè)置窗口圖標(biāo)、尺寸固定 2、中間放log圖 3、用戶名和密碼使用圖片完成 4、賬戶用明文模式,密碼用密文模式 5、點擊登錄后,將界面上的用戶名和“admin”比較,密碼和“123456”比較,如果匹配成功,則輸出登錄成功,如果匹配失敗,則輸出

    2024年02月12日
    瀏覽(33)
  • VS+Qt設(shè)置窗口尺寸(二):窗體控件自適應(yīng)窗口布局,自動調(diào)整大小

    VS+Qt設(shè)置窗口尺寸(二):窗體控件自適應(yīng)窗口布局,自動調(diào)整大小

    VS版本:VS2019 QT版本:Qt5.12.3(msvc2017_64) 為了適配不同尺寸的顯示屏,軟件窗口需要調(diào)整大小,窗口內(nèi)的控件尺寸也要適配窗口的大小。 本例重點講述如何設(shè)置可調(diào)整尺寸的窗口及控件,實現(xiàn)窗口最大化和尺寸調(diào)節(jié)。 本例使用相對簡單的按鍵和文本框來做示例,其他控件均可

    2023年04月23日
    瀏覽(127)
  • Qt Creator 創(chuàng)建 Qt 默認(rèn)窗口程序

    Qt Creator 創(chuàng)建 Qt 默認(rèn)窗口程序

    Qt 入門實戰(zhàn)教程(目錄) Windows Qt 5.12.10下載與安裝 本文介紹用Qt自帶的集成開發(fā)工具Qt Creator創(chuàng)建Qt默認(rèn)的窗口程序。 本文不需要你另外安裝Visual Studio 2022這樣的集成開發(fā)環(huán)境,也不需要你再在Visual Studio 2022中安裝Qt VS Tools這樣的插件。 目的就是為了能夠讓你可以更快的把Q

    2024年02月09日
    瀏覽(27)
  • 在Qt創(chuàng)建的UI中放一個顯示點云的窗口(PCL+QT5)

    在Qt創(chuàng)建的UI中放一個顯示點云的窗口(PCL+QT5)

    1、首先在 Qt Designer 創(chuàng)建UI后,拖一個Widget窗口出來 2、在對象查看器中右擊該Widget,選擇 提升窗口部件 ,如下操作: 3、把UI轉(zhuǎn)出來放在VS項目中,其中你的UI代碼頭文件會自帶QVTKOpenGLNativeWidget.h,當(dāng)然你的VS屬性環(huán)境得配置好VTK的環(huán)境,QVTKOpenGLNativeWidget.h在VTKincludevtk-9.1路徑

    2024年02月08日
    瀏覽(25)
  • Qt窗口設(shè)置無邊框不能移動,鼠標(biāo)穿透后不能響應(yīng)點擊事件

    Qt窗口設(shè)置無邊框不能移動,鼠標(biāo)穿透后不能響應(yīng)點擊事件

    ??最近在做一個迷你小工具,準(zhǔn)備干點不可描述的事情,想要短小強(qiáng)悍,始終在最頂層顯示,同時不要自帶的關(guān)閉按鈕和邊框,百度一下,發(fā)現(xiàn)是需要設(shè)置如下兩個屬性: ??那么問題來了,這樣的話一運行窗體就在正中間,而且無法拖動,就像這樣 ??哪怕對于我這種

    2024年02月10日
    瀏覽(27)

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

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

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

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

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包