QT 跨平台 代码框架
从网上找到的,自己简单整理了一下,没有做个实体项目,未写过类似的程序,所以不知道对不对。若谁有经验或者demo,请留言告知,谢谢!!!
pro文件
QT += core guigreaterThan(QT_MAJOR_VERSION, 4): QT += widgetsCONFIG += c++11# The following define makes your compiler emit warnings if you use
# any Qt feature that has been marked deprecated (the exact warnings
# depend on your compiler). Please consult the documentation of the
# deprecated API in order to know how to port your code away from it.
DEFINES += QT_DEPRECATED_WARNINGS# You can also make your code fail to compile if it uses deprecated APIs.
# In order to do so, uncomment the following line.
# You can also select to disable deprecated APIs only up to a certain version of Qt.
#DEFINES += QT_DISABLE_DEPRECATED_BEFORE=0x060000 # disables all the APIs deprecated before Qt 6.0.0
#源文件
SOURCES += \main.cpp \widget.cpp
#头文件
HEADERS += \widget.h
#ui界面
FORMS += \widget.ui# Default rules for deployment.
qnx: target.path = /tmp/$${TARGET}/bin
else: unix:!android: target.path = /opt/$${TARGET}/bin
!isEmpty(target.path): INSTALLS += target#for linux
unix:!android{
#头文件路径
INCLUDEPATH += " "#库文件
LIBS += -L" "message("this is unix")
message($$PWD)
}#for windows
win32:!wince{win32:QT += axcontainer #用来调用windows中com组件的容器
DEFINES += WIN32INCLUDEPATH += " "
#LIBS += $$PWD
message("this is windows")
message($$PWD)
}#for android
android{
}#for wince
wince{
}
再ui里添加一个textEdit
h文件
#ifndef WIDGET_H
#define WIDGET_H#include <QWidget>QT_BEGIN_NAMESPACE
namespace Ui { class Widget; }
QT_END_NAMESPACEclass Widget : public QWidget
{Q_OBJECTpublic:Widget(QWidget *parent = nullptr);~Widget();private:Ui::Widget *ui;
};
#endif // WIDGET_H
cpp文件
#include "widget.h"
#include "ui_widget.h"Widget::Widget(QWidget *parent): QWidget(parent), ui(new Ui::Widget)
{ui->setupUi(this);#ifdef Q_OS_WIN32ui->textEdit->append("int size: " + QString::number(sizeof (int)));
#elseui->textEdit->append("int size: " + QString::number(sizeof (int)));
#endif}Widget::~Widget()
{delete ui;
}
main.cpp
#include "widget.h"#include <QApplication>int main(int argc, char *argv[])
{QApplication a(argc, argv);Widget w;w.show();return a.exec();
}
感觉跨平台主要就是考虑库和头文件位置问题。
QT 跨平台 代码框架相关推荐
- Qt将鼠标移动范围限定在某个区域内QCursor跨平台代码
不用ClipCursor(),直接上跨平台代码: void MyMainWindow::leaveEvent(QEvent * event) {// Get the window geometry & ...
- 关于QT跨平台和编译器的理解
1.概述 Qt工具包是一个完整封装的C 类库(可以类比MFC),并且使用一次编写,随处编译的方式,可用于构建多平台图形用户界面. 2.QT跨平台 qt在不同操作系统下都实现有不同的底层类库,然后再暴露 ...
- Qt跨平台开发环境搭建
Qt跨平台开发环境搭建 1. 背景介绍 Qt是一个跨平台的C++图形用户界面应用程序框架.它提供给应用程序开发者丰富的图形用户界面所需的所有功能.而且,Qt很容易扩展,并且允许真正地组件编程. ...
- GStreamer跨平台多媒体框架
GStreamer跨平台多媒体框架 Gstreamer基本概念 GStreamer是用于构造媒体处理组件图的库.它支持的应用程序范围从简单的Ogg / Vorbis回放,音频/视频流到复杂的音频(混合 ...
- python PyQt5 QMainWindow类(Qt主窗口框架,主窗口提供了用于构建应用程序用户界面的框架)
https://doc.qt.io/qtforpython/PySide2/QtWidgets/QMainWindow.html?highlight=qmainwindow#PySide2.QtWid ...
- Qt 模型视图框架解读之模型
Qt 模型视图框架 前后阅读的好几遍,要不是项目中需要处理一些相对比较多的数据,这部分内容估计不会去急着去理解. 首先来了解下什么是模型和视图框架吧: 一般地:MVC 设计模式包括三个元素: 表示数据 ...
- ML.NET 1.4 发布,跨平台机器学习框架
ML.NET 是一个面向 .NET 开发人员的开源和跨平台机器学习框架,它包括 Model Builder 和 CLI(命令行接口),让使用自动机器学习(AutoML)构建自定义机器学习模型变得更容易 ...
- QT跨平台项目开发经验(项目打包)
1.代码编写 1.1 代码编写简短,代码运行效率高,适当注释.一般一个大型的项目,代码的运行效率要求较高,一般需要秒级响应,甚至毫秒级. 1.2 建议使用命名空间::的形式来访问该命名空间中的变量和函 ...
- Qt图形视图框架详解-安晓辉-专题视频课程
Qt图形视图框架详解-12227人已学习 课程介绍 介绍Qt中的Graphics View Framework,涉及View.Scene.Item的关系,如何自定义QGraphicsI ...
- 为什么要用Qt开发(Qt跨平台应用开发)
一.为什么选择qt 1.跨平台,一次写代码多个平台编译.使跨平台应用达到各个平台原生应用的体验与流畅度.相比与java或c#在开发图形计算方面的软件时有非常好的使用体验与流畅度. 2.使用C++编程虽 ...
最新文章
- linux 文件目录
- python进制转化大全
- php 跨域名存储cookie,实现跨域名Cookie
- Uart接口的详细解释
- iphone6s发布会_iPhone 6S/SE升级iOS 13性能测试:App启动速度比iOS 12.4.1慢
- 移动混合应用HTML5数据查询优化
- file android closed,Reading a json file in Android [closed]
- Rust FFI 编程 - Rust 语言层面对 FFI 的支持
- 5G UPF与MEC
- 对联广告php代码,css实现的对联广告代码
- Separating Skills and Concepts for Novel Visual Question Answering 论文笔记
- Nacos 服务注册中心
- 软件设计 抽象_调试抽象给软件工程师带来正念的好处
- iOS10.3正式版发布:iOS10.3新功能有哪些? 韩俊强的博客
- 光伏组件高温自燃?台湾一屋顶光伏电站起火
- 强化学习实践七:给Agent添加记忆功能
- JS 位数不够自动左补0
- 输入法(IME)实现原理
- 【Pyecharts | Map3D】带光影效果的3D地图 | 深圳地区二手房房价地图~
- android仿微信充值布局,仿微信充值金额输入框-自定义EditText
热门文章
- 将mmd模型改造成游戏可用模型
- HCNP-Cloud云计算认证
- Android Studio与夜神模拟器联合调试
- 监视Python程式自动退出,并重新启动程式
- abandon_mysql_使用Druid报错abandon connection, open stackTrace
- 复工后的前端学习建议,非常实用!
- 五线谱音名和组别对照表_钢琴音区名称及琴键名称对照表
- 怎样设计访谈提纲_如何设计调查问卷与访谈提纲要点分析.ppt
- 使用多个路由器有线桥接实现无线漫游
- Docker 启动报错 Error starting daemon: SELinux is not supported with the overlay2 ...alse)