Qt

来自开放百科 - 灰狐
(版本间的差异)
跳转到: 导航, 搜索
(链接)
(Debian)
 
(未显示1个用户的14个中间版本)
第16行: 第16行:
 
==简介==
 
==简介==
 
[https://www.bilibili.com/video/BV1H7411R7FQ Qt无所不在]
 
[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]
  
 
==功能==
 
==功能==
第73行: 第75行:
 
*[[QtWebEngine]]
 
*[[QtWebEngine]]
 
*[[QtWebKit]]
 
*[[QtWebKit]]
 +
 +
==指南==
 +
[https://wiki.qt.io/Main/zh 下载 Qt 在线安装器]
  
 
==OS X==
 
==OS X==
第84行: 第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==
第98行: 第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==
第233行: 第244行:
 
*[[PyQt]]
 
*[[PyQt]]
  
==Projects==
+
==项目==
 +
[[文件: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]]  
第258行: 第276行:
 
*[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://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]].
  
 
==用户==
 
==用户==
第278行: 第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]
 
*[https://www.kdab.com/multithreading-with-qt/ Multithreading with Qt]
第283行: 第303行:
 
==图集==
 
==图集==
 
<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
第293行: 第314行:
 
image:qt-module-01.png|基础模块
 
image:qt-module-01.png|基础模块
 
image:qt-module-02.png|扩展模块
 
image:qt-module-02.png|扩展模块
 +
image:falkon-browser.png|Falkon浏览器
 +
image:KDE-KBibTeX.png|KBibTeX
 
</gallery>
 
</gallery>
  

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

[编辑] 文档

[编辑] 图集

[编辑] 链接

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

变换
操作
导航
工具箱