一、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
微信扫一扫
支付宝扫一扫