Qt

来自开放百科 - 灰狐
(版本间的差异)
跳转到: 导航, 搜索
(版本)
(Debian)
 
(未显示1个用户的49个中间版本)
第9行: 第9行:
  
 
==新闻==
 
==新闻==
 +
*[https://planet.qt.io/ Planet Qt]
 
*[http://blog.qt.nokia.com/2011/03/07/nokia-and-digia-working-together/ 诺基亚出售Qt业务给Digia],该公司将接手Qt商业授权和服务业务,诺基亚也将移交大约3500家商业客户。看来,诺基亚是要彻底放弃Qt了。(March 7, 2011)
 
*[http://blog.qt.nokia.com/2011/03/07/nokia-and-digia-working-together/ 诺基亚出售Qt业务给Digia],该公司将接手Qt商业授权和服务业务,诺基亚也将移交大约3500家商业客户。看来,诺基亚是要彻底放弃Qt了。(March 7, 2011)
 
<rss>http://feeds.feedburner.com/TheQtBlog|short|date|max=10</rss>
 
<rss>http://feeds.feedburner.com/TheQtBlog|short|date|max=10</rss>
 +
*[https://dot.kde.org/2000/09/04/qt-now-also-gpl Qt, now also GPL!] (2000.09.04)
  
 
==简介==
 
==简介==
 +
[https://www.bilibili.com/video/BV1H7411R7FQ Qt无所不在]
 +
 +
[https://kde.org/community/whatiskde/kdefreeqtfoundation/ KDE Free Qt Foundation] [https://dot.kde.org/2023/06/21/celebrating-25-years-kde-free-qt-foundation Celebrating 25 years of The KDE Free Qt Foundation]
  
 
==功能==
 
==功能==
 
模块化 Qt C++ 类库提供一套丰富的应用程序生成块 (block),包含了生成高级跨平台应用程序所需的[[Qt/function|全部功能]]。
 
模块化 Qt C++ 类库提供一套丰富的应用程序生成块 (block),包含了生成高级跨平台应用程序所需的[[Qt/function|全部功能]]。
  
==Qt Roadmap==
+
==路线图==
http://qt.nokia.com/developer/qt-roadmap
+
*[https://blog.csdn.net/Qt_China/article/details/117224359 2021年Qt路线图]
 +
*[https://blog.csdn.net/Qt_China/article/details/106763510 2020年Qt路线图]
 +
 
 
==版本==
 
==版本==
 +
===6.2===
 +
*[https://blog.csdn.net/Qt_China/article/details/120683547 Qt 6.2 LTS 正式发布]
 +
*[https://www.qt.io/blog/qml-modules-in-qt-6.2 QML Modules in Qt 6.2]
 +
 
===6.0===
 
===6.0===
[https://qt-china.blog.csdn.net/article/details/111034861 Qt 6.0 正式发布]
+
[https://qt-china.blog.csdn.net/article/details/111034861 Qt 6.0 正式发布] Qt5.0 必须以 C++98 为基础,但现在 Qt6 可以依赖 C++17。
  
 
===5.15===
 
===5.15===
第64行: 第75行:
 
*[[QtWebEngine]]
 
*[[QtWebEngine]]
 
*[[QtWebKit]]
 
*[[QtWebKit]]
 +
 +
==指南==
 +
[https://wiki.qt.io/Main/zh 下载 Qt 在线安装器]
  
 
==OS X==
 
==OS X==
第75行: 第89行:
 
  QMake version 3.0
 
  QMake version 3.0
 
  Using Qt version 5.4.0 in /Users/huihoo/Software/Qt/5.4/clang_64/lib
 
  Using Qt version 5.4.0 in /Users/huihoo/Software/Qt/5.4/clang_64/lib
 +
 +
==Linux==
 +
[https://doc.qt.io/qt-5/linux.html Qt for Linux/X11]
  
 
==Debian==
 
==Debian==
第89行: 第106行:
 
  QMake version 3.0
 
  QMake version 3.0
 
  Using Qt version 5.2.1 in /home/huihoo/Qt/5.2.1/gcc_64/lib
 
  Using Qt version 5.2.1 in /home/huihoo/Qt/5.2.1/gcc_64/lib
 +
 +
==Emacs==
 +
M-x package-install RET qml-mode RET
  
 
==Eclipse==
 
==Eclipse==
第138行: 第158行:
  
 
==Code==
 
==Code==
 +
*[https://code.qt.io Qt Source Code]
 +
*[https://codereview.qt-project.org/ Qt Code Review]
 +
*[https://bugreports.qt.io/ Qt Bug Tracker]
 +
 
Qt hello world
 
Qt hello world
 
  #include <QtGui>
 
  #include <QtGui>
第171行: 第195行:
 
==Qt Script==
 
==Qt Script==
 
[http://docs.huihoo.com/qt/5.x/qtscript-index.html Qt Script]是Qt提供的支持[[ECMAScript]]标准的脚本语言。
 
[http://docs.huihoo.com/qt/5.x/qtscript-index.html Qt Script]是Qt提供的支持[[ECMAScript]]标准的脚本语言。
 +
 +
==Sailfish OS==
 +
[[Sailfish OS]]
  
 
==Android==
 
==Android==
 
[[Qt on Android]]
 
[[Qt on Android]]
 +
 
==iOS==
 
==iOS==
 
[[Qt on iPhone]]
 
[[Qt on iPhone]]
第182行: 第210行:
 
[http://docs.huihoo.com/qt/solutions/4/qtcorba/ Qt CORBA Framework]  
 
[http://docs.huihoo.com/qt/solutions/4/qtcorba/ Qt CORBA Framework]  
 
==SOAP==
 
==SOAP==
The [http://docs.huihoo.com/qt/solutions/4/qtsoap/ Qt SOAP] project provides basic web service support with version 1.1 of the SOAP protocol.
+
*The [http://docs.huihoo.com/qt/solutions/4/qtsoap/ Qt SOAP] project provides basic web service support with version 1.1 of the SOAP protocol.
 +
*[https://github.com/KDAB/KDSoap KD Soap]
 +
 
 
==SSL==
 
==SSL==
 
[http://docs.huihoo.com/qt/solutions/4/qtsslsocket/ SSL Socket]
 
[http://docs.huihoo.com/qt/solutions/4/qtsslsocket/ SSL Socket]
第203行: 第233行:
 
*[[Windows Mobile]]
 
*[[Windows Mobile]]
 
==Qt IDE==
 
==Qt IDE==
 +
*[[KDevelop]]
 
*[[Qt Creator]]
 
*[[Qt Creator]]
 
*[[Monkey Studio]]
 
*[[Monkey Studio]]
 
*[[QDevelop]]
 
*[[QDevelop]]
 
*[[OpenVS]]
 
*[[OpenVS]]
==Projects==
+
*[https://github.com/mapeditor/tiled Tiled]
 +
 
 +
==语言绑定==
 +
[https://wiki.qt.io/Language_Bindings Language Bindings]
 +
*[[PyQt]]
 +
 
 +
==项目==
 +
[[文件:Plasma-Mobile.png|right|Plasma Mobile]]
 +
*[https://github.com/JesseTG/awesome-qt Awesome Qt] [[文件:awesome.png]] [https://github.com/mikalv/awesome-qt-qml Awesome Qt]
 +
*[https://github.com/qt Qt @ GitHub]
 +
*[https://github.com/qtproject Qt Project]
 +
*[https://github.com/qt-labs Qt Labs]
 
*[[KDE]]
 
*[[KDE]]
 +
*[https://plasma-mobile.org/zh-cn/ Plasma Mobile]
 +
*[https://asteroidos.org/ AsteroidOS] Android Wear 设备固件的替代品,使用 [https://www.openembedded.org/ OpenEmbedded] 构建一个嵌入式 Linux 发行版,使用 Qt 编写界面。
 
*[[Tor]]
 
*[[Tor]]
 
*[[Arora]]  
 
*[[Arora]]  
第225行: 第269行:
 
*[[BOUML]]
 
*[[BOUML]]
 
*[[Orange]]
 
*[[Orange]]
 +
*[https://github.com/musescore/MuseScore MuseScore] 一个WYSIWYG的乐谱编辑器
 +
*[https://librecad.org/ LibreCAD]
 +
*[https://github.com/KDAB/FatCRM FatCRM] is a desktop application for [[SugarCRM]].
 +
*[https://github.com/KDAB/kuesa Kuesa Runtime module for Qt 3D] Boost your 3D design-to-code workflow
 +
*[https://github.com/KDAB/hotspot Hotspot] - the [[Linux]] perf GUI for performance analysis
 
*[https://github.com/shadowsocks/shadowsocks-qt5 Shadowsocks-Qt5]
 
*[https://github.com/shadowsocks/shadowsocks-qt5 Shadowsocks-Qt5]
 +
*[https://github.com/therecipe/qt therecipe/qt] allows you to write Qt applications entirely in [[Go]], [[JavaScript]]/[[TypeScript]], [[Dart]]/[[Flutter]], Haxe and [[Swift]]
 +
*[https://www.falkon.org/ Falkon] KDE's lightweight [[web browser]], using [[QtWebEngine]].
  
 
==用户==
 
==用户==
 
*[[Maya]]
 
*[[Maya]]
 
*[[Mathematica]]
 
*[[Mathematica]]
 +
*[https://resources.qt.io/customer-cases/qt-testimonial-autodesk Autodesk Builds Infrastructure Design with Qt]
 
*[http://dz.163.com 魔兽争霸官方对战平台]
 
*[http://dz.163.com 魔兽争霸官方对战平台]
 
*[http://lushi.163.com/ 网易炉石盒子]
 
*[http://lushi.163.com/ 网易炉石盒子]
 +
*[https://www.dcloud.io HBuilderX]
 
*[[灰狗游戏平台]]
 
*[[灰狗游戏平台]]
  
 
==解决方案==
 
==解决方案==
 
*[https://www.qt.io/qt-in-automotive/ Qt in Automotive] [[Autonomous car|汽车]] [https://www.qt.io/qt-automotive-suite/ Qt Automotive Suite] [https://www.genivi.org/ GENIVI]  
 
*[https://www.qt.io/qt-in-automotive/ Qt in Automotive] [[Autonomous car|汽车]] [https://www.qt.io/qt-automotive-suite/ Qt Automotive Suite] [https://www.genivi.org/ GENIVI]  
 +
[[文件:qtsr-overview.png]]
 
*[https://www.qt.io/qt-in-automation/ Automation with Qt] 自动化
 
*[https://www.qt.io/qt-in-automation/ Automation with Qt] 自动化
 
*[https://www.qt.io/qt-in-medical/ Qt in Medical] [[Health|医疗]]
 
*[https://www.qt.io/qt-in-medical/ Qt in Medical] [[Health|医疗]]
第243行: 第297行:
  
 
==文档==
 
==文档==
 +
*[https://doc.qt.io/archives/ Qt Documentation Archives]
 
*[http://docs.huihoo.com/automotivelinux/summit/2016/Qt-5.7-License-Changes-The-Qt-Automotive-Suite.pdf Qt 5.7 License Changes - The Qt Automotive Suite]
 
*[http://docs.huihoo.com/automotivelinux/summit/2016/Qt-5.7-License-Changes-The-Qt-Automotive-Suite.pdf Qt 5.7 License Changes - The Qt Automotive Suite]
 +
*[https://www.kdab.com/multithreading-with-qt/ Multithreading with Qt]
  
 
==图集==
 
==图集==
 
<gallery>
 
<gallery>
 +
image:Qt-Setup.png|Qt Setup
 
image:qml-javascript-cpp.png|QML: JS与C++混合编程
 
image:qml-javascript-cpp.png|QML: JS与C++混合编程
 
image:ros-gui-rqt.png|ROS GUI
 
image:ros-gui-rqt.png|ROS GUI
第252行: 第309行:
 
image:Bolt-Built-with-Qt.png|Bolt
 
image:Bolt-Built-with-Qt.png|Bolt
 
image:Qt-Automotive-Suite-Architecure.png|Qt汽车套件
 
image:Qt-Automotive-Suite-Architecure.png|Qt汽车套件
 +
image:qt3d-plugins.jpeg|Qt 3D
 +
image:qt-threads-and-objects.png|线程与对象
 +
image:Qt-Signals-and-Slots.png|信号与槽
 +
image:qt-module-01.png|基础模块
 +
image:qt-module-02.png|扩展模块
 +
image:falkon-browser.png|Falkon浏览器
 +
image:KDE-KBibTeX.png|KBibTeX
 
</gallery>
 
</gallery>
  
 
==链接==
 
==链接==
 
*[http://qt.io/ Qt官网]
 
*[http://qt.io/ Qt官网]
*[https://github.com/qt Qt @ GitHub]
 
*[https://github.com/qtproject Qt Project]
 
*[https://github.com/qt-labs Qt Labs]
 
*[https://github.com/JesseTG/awesome-qt Awesome Qt] [[文件:awesome.png]]
 
 
*[http://download.qt.io/official_releases/qt/ 下载1] [https://download.qt.io/new_archive/qt/ 下载2]
 
*[http://download.qt.io/official_releases/qt/ 下载1] [https://download.qt.io/new_archive/qt/ 下载2]
 
*[http://wiki.qt.io/ Qt wiki]
 
*[http://wiki.qt.io/ Qt wiki]
第274行: 第334行:
 
*[https://projects.kde.org/projects/qt5 Qt5 @ KDE]
 
*[https://projects.kde.org/projects/qt5 Qt5 @ KDE]
 
*[http://www.devbean.net/ Qt 学习之路]
 
*[http://www.devbean.net/ Qt 学习之路]
 +
*[https://space.bilibili.com/305085009 Qt @ bilibili]
  
 
[[category:qt]]
 
[[category:qt]]
第279行: 第340行:
 
[[category:c++]]
 
[[category:c++]]
 
[[category:mobile]]
 
[[category:mobile]]
 +
[[category:automotive]]
 +
[[category:embedded system]]
 
[[category:huihoo]]
 
[[category:huihoo]]

2023年6月26日 (一) 08:54的最后版本

Wikipedia-35x35.png 您可以在Wikipedia上了解到此条目的英文信息 Qt Thanks, Wikipedia.
Qt-90x90.png

Qt – 一个跨平台应用程序和UI开发框架

Qt Product Arch

支持 Windows, Mac OS X, Linux/X11, embedded Linux, Windows Mobile 和 SymbianMeeGo 平台。

目录

[编辑] 新闻

  • Planet Qt
  • 诺基亚出售Qt业务给Digia,该公司将接手Qt商业授权和服务业务,诺基亚也将移交大约3500家商业客户。看来,诺基亚是要彻底放弃Qt了。(March 7, 2011)

自http://feeds.feedburner.com/TheQtBlog加载RSS失败或RSS源被墙

[编辑] 简介

Qt无所不在

KDE Free Qt Foundation Celebrating 25 years of The KDE Free Qt Foundation

[编辑] 功能

模块化 Qt C++ 类库提供一套丰富的应用程序生成块 (block),包含了生成高级跨平台应用程序所需的全部功能

[编辑] 路线图

[编辑] 版本

[编辑] 6.2

[编辑] 6.0

Qt 6.0 正式发布 Qt5.0 必须以 C++98 为基础,但现在 Qt6 可以依赖 C++17。

[编辑] 5.15

Qt 5.15 LTS Released

[编辑] 5.9

[编辑] 5.8

[编辑] 5.7

[编辑] 5.6

[编辑] 5.5

[编辑] 5.4

[编辑] 5.0

Qt 5

[编辑] 4.8

Qt 4.8

[编辑] 4.7

Qt 4.7 正式版发布

[编辑] Modules

Module Summary

A module is a selection of projects (also called components) which form a logical group based on a limited number of features to which they contribute. A module can contain libraries, plug-ins, applications and server components.

More details

[编辑] 浏览器

[编辑] 指南

下载 Qt 在线安装器

[编辑] OS X

通过 Qt Online Installer for OS X

vim /etc/profile

export PATH=/Users/huihoo/Software/Qt/5.4/clang_64/bin:$PATH
或 export PATH=/Users/huihoo/Software/Qt/5.4/android_armv7/bin:$PATH

测试

$ qmake -v
QMake version 3.0
Using Qt version 5.4.0 in /Users/huihoo/Software/Qt/5.4/clang_64/lib

[编辑] Linux

Qt for Linux/X11

[编辑] Debian

vim /etc/profile

#Qt
QTDIR=/home/huihoo/Qt/5.2.1/gcc_64
PATH=$QTDIR/bin:$PATH
LD_LIBRARY_PATH=$QTDIR/lib:$LD_LIBRARY_PATH
export QTDIR PATH LD_LIBRARY_PATH
source /etc/profile
updatedb
qmake -v
QMake version 3.0
Using Qt version 5.2.1 in /home/huihoo/Qt/5.2.1/gcc_64/lib

[编辑] Emacs

M-x package-install RET qml-mode RET

[编辑] Eclipse

Qt Eclipse Integration

[编辑] VS

Qt Visual Studio Integration

Qt-logo.png is integrated with the Microsoft Visual Studio .NET and Eclipse integrated development environments. This means Qt programmers can use the IDE they are most comfortable with to do cross-platform development.

安装QT SDK 后,默认采用的是动态链接库的编译方式, 要生成静态的版本, 就需要自己重新进行编译.

设置 QMAKESPEC 为 win32-msvc2008 或 win32-msvc2005 的环境变量
设置 QTDIR 环境变量 如: C:\Qt\2009.05\qt
加入 C:\Qt\2009.05\qt\bin 到 PATH中
打开一个 Visual Studio command prompt 命令窗口
echo %QMAKESPEC%
configure.exe --help
C:\Qt\2009.05\qt\mkspecs\win32-msvc2008\qmake.conf
QMAKE_LFLAGS            = -static
configure
nmake

常见错误

cannot open input file 'QtCored4.lib'// 是因为没有进行静态编译. 需先进行前面的操作. Qt 2009.05


编译出的是类似 QtWebKitd4.lib, 而不是 QtWebKit4.lib // Qt 2009.05

编译出 QtWebKitd4.lib Failed to write the updated manifest to the resource of file QtWebKitd4.dll // Qt 2010.01

QtUiToolsd.lib没编译出来 ?

需要什么库就编译什么库, 如编译 SQLite3

cd %QTDIR%\src\plugins\sqldrivers\sqlite
qmake "INCLUDEPATH+=C:\sqlite-3.6.22" "LIBS+=C:\Qt\2010.01\qt\plugins\sqldrivers\qsqlite.lib" sqlite.pro
nmake

在C:\Qt\2010.01\qt\plugins\sqldrivers下创建了qsqlite4.dll, qsqlite4.lib, qsqlited4.dll, qsqlited4.lib

PostgreSQL

cd $QTDIR/src/plugins/sqldrivers/psql
qmake "INCLUDEPATH+=C:\pgsql-8.3.6\include" "LIBS+=C:\pgsql-8.3.6\lib\libpq.lib" psql.pro
nmake

在C:\Qt\2010.01\qt\plugins\sqldrivers下创建了 qsqlpsql4.lib, qsqlpsql4.dll, qsqlpsqld4.dll, qsqlpsqld4.lib

make: /usr/bin/uic-qt4: Command not found

apt-get install libqt4-dev

[编辑] Code

Qt hello world

#include <QtGui>

int main(int argc, char *argv[])
{
    QApplication app(argc, argv);
    QLabel label("Hello, world!");
    label.show();
    return app.exec();
}

Compiling and executing

1. Create a folder named Hello
2. Copy paste the above program as Hello.cpp in folder Hello
3. At Hello folder run

 a. qmake -project
 b. qmake 
 c. make/gmake/nmake - as needed by OS and your compiler setups

4. Execute ./release/Hello (Or release\Hello.exe in Windows)

[编辑] Plugins

Qt provides two APIs for creating plugins:

  • A higher-level API for writing extensions to Qt itself: custom database drivers, image formats, text codecs, custom styles, etc.
  • A lower-level API for extending Qt applications.

http://docs.huihoo.com/qt/4.6/plugins.html

[编辑] Qtopia / Qt Extended

Qtopia-app-chooser.png

[编辑] Qt Script

Qt Script是Qt提供的支持ECMAScript标准的脚本语言。

[编辑] Sailfish OS

Sailfish OS

[编辑] Android

Qt on Android

[编辑] iOS

Qt on iPhone

[编辑] CORBA

Wikipedia-35x35.png 您还可以在维基百科上了解到此条目的中文信息 Qt 感谢, 维基百科.

Qt CORBA Framework

[编辑] SOAP

  • The Qt SOAP project provides basic web service support with version 1.1 of the SOAP protocol.
  • KD Soap

[编辑] SSL

SSL Socket

[编辑] MFC

Qt/MFC Migration Framework

[编辑] GTK+

Migrate from GTK+ to Qt

[编辑] State Machine

  • Qt State Machine Framework
  • FSME是Linux下一个基于Qt的状态机建模工具,它能够自动生成状态机框架代码,并且同时支持C++和Python语言.

[编辑] Database

[编辑] Mobile Platforms

[编辑] Qt IDE

[编辑] 语言绑定

Language Bindings

[编辑] 项目

Plasma Mobile

[编辑] 用户

[编辑] 解决方案

Qtsr-overview.png

[编辑] 文档

[编辑] 图集

[编辑] 链接

分享您的观点
个人工具
名字空间

变换
操作
导航
工具箱