qt linux 自定义执行档,Qt使用教程之指定运行设置(三)

在指定运行设置(二)一文中,我们介绍了指定调试器设置、为基于Linux的设备指定运行设置、为QNX设备指定运行设置等。本文我们将继续为大家介绍指定qmake项目运行设置的余下所有内容,欢迎品鉴!

选择运行环境

Qt Creator会自动选择用于运行应用程序的基于设备类型的运行环境,你可以在Run Environment部分编辑或选择其他环境。你还可以编辑现有的环境变量,或添加、重置和取消新的变量。

8b2505eff40ed3d34eb4860717f44ee2.png

在桌面上运行应用程序时,默认情况下使用Build Environment,但是你也可以使用没有添加构建环境的系统环境。需要在一个干净的系统环境中运行应用程序,可以选择Clean Environment。

当在移动设备所连接的开发主机上运行应用程序时,Qt Creator可以从设备中提取关于Device Environment的信息。通常情况下,编辑设备环境没有任何意义。如果想要修改运行环境的环境变量值,你可以选择Batch Edit。

指定一个自定义可执行文件来运行

如果你在Qt Creator中使用CMake、通用项目类型或想要运行一个自定义的桌面可执行文件,那么可以为你的项目创建一个自定义的可执行文件来运行配置。例如当在一个库中工作时,你可以运行一个针对库的测试应用程序链接。使用命令行参数、工作目录和环境变量指定可执行文件运行应用程序。

e9eff3383cfca84c33a3d947f3e6cccc.png

为Qt Quick UI项目指定运行设置

你可以为桌面设备类型包指定运行设置:

在Arguments字段中,你可以指定命令行参数传递给可执行文件。

在Main QML file中选择Qt QML Viewer文件后,该文件将会启动。

e2d3ba2d6b6db09c29652b10443634cd.png

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Linux下,可以通过自定义QWidget来实现自定义标题栏。具体实现步骤如下: 1. 创建一个继承自QWidget的类,用于实现自定义标题栏。 ```cpp class MyTitleBar : public QWidget { Q_OBJECT public: explicit MyTitleBar(QWidget *parent = nullptr); protected: void mousePressEvent(QMouseEvent *event) override; void mouseMoveEvent(QMouseEvent *event) override; private: QPoint m_lastPos; }; ``` 2. 在构造函数中设置标题栏的大小、背景色和布局。 ```cpp MyTitleBar::MyTitleBar(QWidget *parent) : QWidget(parent) { setFixedHeight(30); setStyleSheet("background-color: #333333"); QHBoxLayout *layout = new QHBoxLayout(); layout->setContentsMargins(0, 0, 0, 0); layout->setSpacing(0); setLayout(layout); } ``` 3. 重写mousePressEvent和mouseMoveEvent函数,实现标题栏的拖动。 ```cpp void MyTitleBar::mousePressEvent(QMouseEvent *event) { if (event->button() == Qt::LeftButton) { m_lastPos = event->globalPos() - this->parentWidget()->geometry().topLeft(); } } void MyTitleBar::mouseMoveEvent(QMouseEvent *event) { if (event->buttons() & Qt::LeftButton) { QPoint pos = event->globalPos() - m_lastPos; this->parentWidget()->move(pos); } } ``` 4. 在主窗口中添加自定义标题栏,并将系统标题栏隐藏。 ```cpp MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent) { setWindowTitle("Custom Title Bar"); setWindowFlags(Qt::FramelessWindowHint | windowFlags()); MyTitleBar *titleBar = new MyTitleBar(this); setMenuWidget(titleBar); // 添加其他控件及布局 // ... } ``` 5. 编译运行程序,即可看到自定义标题栏。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值