一、Qt5.9安装
Qt5.9 是用于 C++ 应用程序开发的一种跨平台框架,支持 Windows、macOS、Linux、iOS 和 Android,还支持 WebAssembly、watchOS 和 tvOS。你可以访问官网 https://www.qt.io/download 下载安装包。安装步骤如下:
1、选择合适的版本来下载(开源/商业版)
2、运行安装文件
3、勾选需要安装的组件
4、安装完成后,为了防止环境变量的混乱,最好将 Qt5.x.x 安装到默认路径下
下面是官方提供的Demo安装演示代码:
void Widget::install() { QString demoInstaller = QDir::toNativeSeparators(QCoreApplication::applicationDirPath()) + "/demos/qt-installer-framework/examples/repositorymeta/meta/"; QStringList arguments; arguments << "-v"; arguments << "--all-sub-packages"; arguments << "-r" << demoInstaller; arguments <setStandardOutputProcess(&m_stdoutProcess); connect(&m_stdoutProcess, &QProcess::readyReadStandardOutput, this, &Widget::readInstallerStdout); process->start("go", arguments); }
二、Qt5.9代码5.5
如果你正在使用 Qt5.5,升级到 Qt5.9,可以使你受益匪浅,可以让你使用更多的新特性,比如增强的 Qt Quick 控件、Qt3D 渲染引擎等等。如果你要将 Qt5.5 代码移植到 Qt5.9,应注意以下内容:
1、修改项目文件,引入新的 Qt 模块:
# Qt5.5 项目文件: QT += core gui widgets # Qt5.9 项目文件: QT += core gui widgets quick 3d
2、使用 Qt5.9 开发向后兼容的程序,需要使用 Qt::AA_EnableHighDpiScaling 来启用自动缩放分辨率的功能。
int main(int argc, char *argv[]) { QApplication a(argc, argv); QGuiApplication::setAttribute(Qt::AA_EnableHighDpiScaling); //启用自动缩放分辨率的功能 MainWindow w; w.show(); return a.exec(); }
三、Qt5.9代码qt5.7
Qt5.9 的代码可以在 Qt5.7 的环境下编译和运行。如果你的工程中使用了 Qt5.9 特性,需要在 Qt5.7 中加入需要使用的模块。更多内容可以查看官方文档 https://doc.qt.io/qt-5.9/qtmodules.html,下面是示例代码:
# Qt5.7 项目文件: CONFIG += c++11 #使用 C++11 标准 QT += core gui widgets # Qt5.7 中加入使用 Qt5.9 模块: contains(QT_MAJOR_VERSION, 5) { # Qt5.9 特性 QT += quick 3d }
四、Qt5.9环境变量配置
在 Windows 上安装 Qt5.9 后,默认是没有加入环境变量的,需要在系统环境变量中加入 QT_HOME 和 PATH 变量。在 Linux 或 macOS 上不需要,只要修改 .bashrc 文件即可。
1、Windows :
QT_HOME : C:\Qt\Qt5.9.4\5.9.4\msvc2015_64 #默认路径 PATH : %QT_HOME%\bin;
2、Linux 和 macOS :
# Linux: echo "export QT_HOME=/opt/Qt/5.9.4/gcc_64" >> ~/.bashrc echo "export PATH=\$PATH:\$QT_HOME/bin" >> ~/.bashrc source ~/.bashrc # macOS : echo "export QT_HOME=/usr/local/Qt/5.9.4/clang_64" >> ~/.bash_profile echo "export PATH=\$PATH:\$QT_HOME/bin" >> ~/.bash_profile source ~/.bash_profile
五、Qt5.9.7如何创建桌面快捷方式
在 Windows 上使用 Qt5.9.7 创建桌面快捷方式,可以使用 QWinTaskbarButton 类。下面是示例代码:
/* 创建快捷方式 */ void MainWindow::on_createShortcutButton_clicked() { QString shortcutName = QApplication::applicationName(); QString shortcutDir = QStandardPaths::writableLocation(QStandardPaths::DesktopLocation); QString shortcutPath = shortcutDir + "/" + shortcutName + ".lnk"; QString exePath = QApplication::applicationFilePath(); QWinTaskbarButton *taskbarButton = new QWinTaskbarButton(this); QWinTaskbarProgress *taskbarProgress = taskbarButton->progress(); taskbarButton->setWindow(this->windowHandle()); QFileInfo exeFileInfo(exePath); const QString exeIcoPath = ":/res/" + exeFileInfo.baseName() + ".ico"; QIcon icon(exeIcoPath); QFile exeIcoFile(exeIcoPath); if (exeIcoFile.exists() && exeIcoFile.open(QFile::ReadOnly)) { icon = QIcon(QPixmap::fromImage(QImage::fromData(exeIcoFile.readAll()))); } QFile link(shortcutPath); link.open(QIODevice::WriteOnly); QDataStream out(&link); out.setVersion(QDataStream::Qt_5_0); out << quint32(0x0000000b) << QString("InternetShortcut") << quint32(0x00000001) << QString("") << quint16(0x0000); out << QString("URL") << QString("file:///" + exePath).replace("/", "\\") << quint16(0x0000); out << QString("IconFile") << exeIcoPath << quint16(0x0000) << qint32(0x00000000) << quint32(0x00000000) << quint32(0x00000001); out << QString("ShowCommand") <setVisible(true); taskbarProgress->setValue(0); taskbarProgress->resume(); //将当前窗口添加到任务栏 taskbarButton->show(); //设置进度条的值 for (int i = 0; i setValue(i); QTest::qWait(10); } }
原创文章,作者:小蓝,如若转载,请注明出处:https://www.506064.com/n/195869.html