原文转载于:https://cloud.tencent.com/developer/ask/120278
你可以使用这个QWinTaskbarProgress
类。要使用这个类,你需要添加win32:QT += winextras
你的.pro文件。
下面是一个示例代码,演示如何QProgressBar
在Windows任务栏中显示a的值(从此示例中得到启发):
#ifdef _WIN32 //The _WIN32 macro is automatically generated when compiling for Windows #include <QWinTaskbarProgress> #include <QWinTaskbarButton> #endif QProgressBar *progressBar = new QProgressBar; progressBar->show(); #ifdef _WIN32 QWinTaskbarButton *windowsTaskbarButton = new QWinTaskbarButton; //Create the taskbar button which will show the progress windowsTaskbarButton->setWindow(progressBar->windowHandle()); //Associate the taskbar button to the progress bar, assuming that the progress bar is its own window QWinTaskbarProgress *windowsTaskbarProgress = windowsTaskbarButton->progress(); windowsTaskbarProgress->show(); QObject::connect(loadingWindow, &QProgressBar::valueChanged, [windowsTaskbarProgress](int value){ windowsTaskbarProgress->setValue(value); //Change the value of the progress in the taskbar when the value of the progress bar changes }); #endif