什么是qt,QT Creator,QT SDK,QT Designer

2024-04-27 16:22

1. 什么是qt,QT Creator,QT SDK,QT Designer

Qt是一个跨平台的C++图形用户界面应用程序框架。它提供给应用程序开发者建立艺术级的图形用户界面所需的所用功能。Qt是完全面向对象的,很容易扩展,并且允许真正地组件编程。
  自从1996年早些时候,Qt进入商业领域,它已经成为全世界范围内数千种成功的应用程序的基础。Qt也是流行的Linux桌面环境KDE 的基础,KDE是所有主要的Linux发行版的一个标准组件。 
  Qt支持下述平台: 
  MS/Windows - 95、98、NT 4.0、ME、2000、XP 和 Vista
  Unix/X11 - Linux、Sun Solaris、HP-UX、Compaq Tru64 UNIX、IBM AIX、SGI IRIX和其它很多X11平台 
  Macintosh - Mac OS X 
  Embedded - 有帧缓冲(framebuffer)支持的Linux平台,Windows CE。 
  Symbian/S60 - 目前已经可以提供技术预览版本
  Qt是诺基亚公司的一个产品。 
  Qt被按不同的版本发行: 
  Q商业版 提供给商业软件开发。它们提供传统商业软件发行版并且提供在协议有效期内的免费升级和技术支持服务。如果要获得最新信息,请浏览诺基亚公司Qt Software网站页面,或者与sales@trolltech.com联系。商业版多一些扩展模块。 
  Qt开源版是Qt仅仅为了开发自由和开放源码软件, 提供了和商业版本同样的功能。GNU通用公共许可证下,它是免费的。最新的版本可以在这里下载。
  从2009年3月发布的Qt 4.5 起,诺基亚将为Qt增添新的开源LGPL授权选择。
  关于如何正确的选择这三种授权协议,可以阅读[1]。
  从2009年5月11日起,诺基亚Qt Software 宣布 Qt源代码库面向公众开放,Qt 开发人员可通过为 Qt 以及与 Qt 相关的项目贡献代码、翻译、示例以及其他内容,协助引导和塑造 Qt未来的发展。为了便于这些内容的管理,Qt Software 启用了基于 Git 和 Gitorious 开源项目的Web 源代码管理系统[2] 。
  在推出开放式 Qt 代码库的同时,Qt Software 在其官方网站发布了其产品规划(Roadmap)。其中概述了研发项目中的最新功能,展现了现阶段对 Qt 未来发展方向的观点,以期鼓励社区提供反馈和贡献代码,共同引导和塑造 Qt 的未来。
  
Qt 4.5版本

  Qt 4.5涵盖了一些新的特色,它的最大改进是通过协同作用提升了整个框架的性能。图形系统、数据处理和网络引擎性能显著增强,实现了基于Qt的应用程序性能的明显提升。
  Qt 4.5版本还提升了与WebKit页面渲染引擎的集成度,将Web和本地内容融合进丰富的用户体验当中。包括:
  Netscape浏览器插件API支持,使Qt应用程序可以载入Flash(例如YouTube播放器) 更先进的Web 用户界面效果,包括动画、转换和缩放 新的JavaScript脚本语言引擎可提供更强的性能 
  Qt4.5还被移植进了苹果的Cocoa框架。之前的Qt只支持Carbon框架,现在的Qt 4.5两者都支持。这意味着开发人员能够以单一源代码创建出支持32位或64位字节的Intel或PowerPC Mac二进制文件。
  
Qt Creator

  开发人员目前已经可以下载Qt Creator的1.1版本,这是一个用于Qt开发的轻量级跨平台集成开发环境。Qt Creator可带来两大关键益处:提供首个专为支持跨平台开发而设计的集成开发环境 (IDE),并确保首次接触Qt框架的开发人员能迅速上手和操作。
  Qt Creator包含了一套用于创建和测试基于Qt应用程序的高效工具,包括:
  一个高级的C++代码编辑器 上下文感知帮助系统 可视化调试器 源代码管理 项目和构建管理工具
  Qt Creator在LGPL 2.1版本授权下有效,并且接受代码贡献。目前的Qt Creator只支持桌面平台(Windows、Linux、Mac操作系统)的Qt开发,但随后数月就能支持嵌入式平台的开发。


2. 为什么选择 QT
2.1 QT 是基於 C++ 的一种语言 
相信 C/C++ 目前还是一种很多人都在学习的语言. QT 的好处就在於 QT 本身可以被称作是一种 C++ 的延伸. QT 中有数百个 class 都是用 C++ 写出来的. 这也就是说, QT 本身就具备了 C++ 的快速、简易、Object-Oriented Programming (OOP)等等无数的优点. 
2.2 QT 具有非常好的可移植性(Portable)
QT 不只是可以在 Linux 中运作.也同样可以运行在 Microsoft Windows 中.这也就意味者,利用 QT 编写出来的程式,在几乎不用修改的情况下,就可以同时在 Linux 中和 Microsoft Windows 中运行. QT 的应用非常之广泛,从 Linux 到 Windows 从 x86 到 Embedded 都有 QT 的影子.
3. 什么是 QT Designer 
简单的来说 QT Designer 是一个 GUI 的工具. 这个工具可以帮助我们来加快写 QT 程式的速度. 利用 QT Designer 可以用一种所见既所得的方式,来产生 QT 程式的 GUI 介面的程式码. 通过增加一些功能,就可以完成一个程式了.利用 QT Designer 可以非常快速的学会 QT, 而我们这里说利用 QT Designer 来学习 QT 而不是利用 QT Designer 来写 QT, 这里的区别就在於, QT Designer 所产生的程式码有些繁琐. 跑起来也比较的慢些.我们这里只是利用 QT Designer 来帮助我们学习.而不是直接 去跑 QT Designer 生成的程式码.   
Qt软件开发工具包 (Qt SDK)

  全新的Qt软件开发工具包,可从www.qtsoftware.com下载。这个综合套装的设计主旨,是为开发人员提供从一个易于安装的二进制文件包入手,开始跨平台Qt开发这一过程中所需的一切。
  Qt SDK包括了Qt库、Qt Creator IDE和Qt工具,这些都集成在一个易于安装的文件包里。
  Qt SDK也同样也支持Linux/X11, Windows, Mac三种主流桌面操作系统。
Qt的优势
  Qt 同 X Window 上的 Motif,Openwin,GTK 等图形界 面库和 Windows 平台上的 MFC,OWL,VCL,ATL 是同类型的东西,但是 Qt 具有下列优点:
  优良的跨平台特性: 
  Qt支持下列操作系统: Microsoft Windows 95/98, Microsoft Windows NT, Linux,Solaris, SunOS, HP-UX, Digital UNIX (OSF/1, Tru64), Irix, FreeBSD,BSD/OS, SCO, AIX, OS390,QNX 等等。 
  面向对象 
  Qt 的良好封装机制使得 Qt 的模块化程度非常高,可重用性较好,对于用户开发来说是非常 方便的。 Qt 提供了一种称为 signals/slots 的安全类型来替代 callback,这使得各个元件 之间的协同工作变得十分简单。 
  丰富的 API 
  Qt包括多达 250 个以上的 C++ 类,还替供基于模板的 collections, serialization, file, I/Odevice, directory management, date/time 类。甚至还包括正则表达式的处理 功能。
  支持 2D/3D 图形渲染,支持 OpenGL
  大量的开发文档
  XML 支持
  Webkit 引擎的集成,可以实现本地界面与Web内容的无缝集成
  但是真正使得 Qt 在自由软件界的众多 Widgets (如 Lesstif,Gtk,EZWGL,Xforms,fltk 等等)中脱颖而出的还是基于 Qt 的重量级软件 KDE 。

什么是qt,QT Creator,QT SDK,QT Designer

2. qt 和 qt creator 有什么区别?都是做什么用的?

qt从编程的角度来说,它是一种可跨平台的C++图形用户界面应用程序开发框架。一般开发图形用户界面(GUI)用qt居多。例如手机软件的界面开发就可以用qt。
qt creator通俗易懂地理解的话,你就认为它是一个软件就好了。
专业一点说的话,Qt Creator 是 Qt 被 Nokia 收购后推出的一款新的轻量级集成开发环境(IDE)。此 IDE能够跨平台运行,支持的系统包括 Linux(32位及64 位)、Mac OS X 以及 Windows。根据官方描述,Qt Creator的设计目标是使开发人员能够利用 Qt 这个应用程序框架更加快速及轻易的完成开发任务。

3. QT和VS的关系??? 嘿嘿新手一只~ 请问1.QT和VS的关系是??? 2.QT Creator 和QT SDK有什么区别? 谢谢~

关系:QT是由Qt Company开发的跨平台C++图形用户界面应用程序开发框架。可以通过VS来在QT的框架下进行开发。QT Creator 和QT SDK区别如下:
一、主体不同
1、QT Creator:是 Qt 被 Nokia 收购后推出的一款新的轻量级集成开发环境(IDE)。
2、QT SDK:的跨平台C++图形用户界面应用程序开发框架工具包。


二、功能不同
1、QT Creator: 能够跨平台运行,支持的系统包括 Linux(32 位及 64 位)、Mac OS X 以及 Windows。
2、QT SDK:是面向对象的框架,使用特殊的代码生成扩展(称为元对象编译器(Meta Object Compiler, moc))以及一些宏,Qt很容易扩展,并且允许真正地组件编程。
三、特点不同
1、QT Creator:是为了帮助新 Qt 用户更快速入门并运行项目,还可提高有经验的 Qt 开发人员的工作效率。
2、QT SDK:良好封装机制使得 Qt 的模块化程度非常高,可重用性较好,对于用户开发来说是非常 方便的。

参考资料来源:百度百科-qt creator
参考资料来源:百度百科-qt

QT和VS的关系??? 嘿嘿新手一只~ 请问1.QT和VS的关系是??? 2.QT Creator 和QT SDK有什么区别? 谢谢~

4. qt creator和qt的区别

区别:
1、QT Creator 只是一个集成的编译器,用于将源代码编译成可执行程序。
QT 是跨平台C++图形用户界面应用程序开发框架,可以简单理解成是一个开发包。
2、Qt是完全面向对象的,很容易扩展,并且允许真正地组件编程。
QT Creator 跨平台的 Qt IDE,Qt Creator 是 Qt 被 Nokia 收购后推出的一款新的轻量级集
成开发环境。
3、QT SDK 包括Qt库、Qt Creator IDE和Qt工具,这些都集成在一个易于安装的文件包里。
Qt<QT Creator< QT SDK,QT框架约等于MFC。
基本说明:
1、QtCreator 主要是为了帮助新 Qt 用户更快速入门并运行项目,还可提高有经验的 Qt 开发人员的工作效率。集成了领先的版本控制软件,无须知晓确切的名称或位置搜索类和文件跨不同位置或文件沿用符号在头文件和源文件,或在声明和定义之间切换;
2、为Qt跨平台开发人员的需求而量身定制集成了特定于 Qt 的功能,如信号与槽 (Signals & Slots)图示调试器, 对Qt类结构可一目了然集成了Qt Designer 可视化布局和格式构建器只需单击一下就可生成和运行 Qt 项目。"同步声明及定义"功能。使用该功能,当要改变某个方法的声明或定义时,Qt Creator会自动在代码及头中帮助进行同步。

5. VS里正常的代码在QT里执行有问题?要怎么弄好QT的?

在安装 QT+MSVC环境的时候,该出的问题我想都让我碰上了。
问题1 :jom.exe 崩溃,构建不通过。
jom: ......... Error 219:19:11: 进程"E:\QT1\Tools\QtCreator\bin\jom.exe"退出,退出代码 2 。Error while building/deploying project untitled (kit: Desktop Qt 5.5.1 MSVC2015 64bit)When executing step "Make"这个我没有出现什么cl 不是内部命令的提示,至于使用nmake就更错了,nmake运行就出问题,估计是安装时nmake就有问题了。所以不是环境变量之类的错误,由于我前期先安装的QT+MinGW,后来需要MSVC才安装的vs2015,估计是这个安装先后顺序导致一些配置不对,反正我的kit配置都没有错误提示了也不行,干脆直接全卸了重新来。这次OK了,msvc,mingw都能用了。后来看到有初始化msvc编译环境的脚本,如果不行就先使用下试试,没准就OK了,不用浪费时间重新安装(安装时间好长呀) 
1
问题2 -1: error: LNK2019: 无法解析的外部符号 **,该符号在函数 ** 中被引用,看图说话。 
无法解析的外部符号说明,该函数的库或头文件没有被引入,比如下面
qmfcapp.obj : error LNK2019: 无法解析的外部符号 __imp_SetWindowsHookExW,该符号在函数 "public: static bool __cdecl QMfcApp::pluginInstance(void *)" (?pluginInstance@QMfcApp@@SA_NPEAX@Z) 中被引用在QT中找到QMfcApp::pluginInstance函数查看了下使用到外部函数的地方SetWindowsHookEx,点击可以跳转到头文件WinUser.h,那就是库没有了。由于原来是MinGW,内部的库都导入了,转到MSVC后一些自带的系统库没有加进来。百度查找SetWindowsHookEx该函数所需库User32.lib,在电脑上搜了。然后在.pro工程文件中右键加入库如下把加后缀的勾删了,我这window下好像没有专门的d版调试库。 OK。这时在库里就自动加上了下面这几行。
unix|win32: LIBS += -L'C:/Program Files (x86)/Windows Kits/8.1/Lib/winv6.3/um/x64/' -lUser32INCLUDEPATH += 'C:/Program Files (x86)/Windows Kits/8.1/Lib/winv6.3/um/x64'DEPENDPATH += 'C:/Program Files (x86)/Windows Kits/8.1/Lib/winv6.3/um/x64'1
2
3
4
1
问题3 User32.Lib:-1: warning: LNK4272:库计算机类型“X86”与目标计算机类型“x64”冲突 刚开始时找错了库,找到的是32位编译出来的user32.lib库,后来直接到系统盘window下找到了64位的就OK了。
问题4 This application has requested the Runtime to terminate it in an unusual way这个在我安装了vs2015就出现了这问题,没装时都好好的。这个上一篇有讲到,这次又遇上了,我真的是无语了,也是莫名其妙的又不报了。具体怎么弄好的我也摸不着,vs2015又装了VC++里的所有部分(MFC类,兼容XP什么的两个,原本就一个VC++编译器的),到qt安装目录里有个vcredist_msvc2015_x86运行,重启后也一样,然后还有什么,重新拷贝库?一堆事情,一个个试都不好,换vb,vs,突然之间就好了,可是VB来错误53,找不到dll了,vs来加载格式不正常,这个看问题5。但有一点可以肯定—-错误与下面的dll无关,这个是depends找不到有关的bug。 
问题5 试图加载格式不正确的程序。 (异常来自 HRESULT:0x8007000B)这里是目标平台和库不一致,需要注意下,用MinGW编译的去MinGW版的QT库里找对应的库(debug版和release版),然后要注意的是它是32位的,所以vs里只能选择X86平台。貌似没有找到有64的MinGW版本的QT. 而MSVC我下的是64的,所以只能选则X64平台。拷贝库也是到msvc版的QT库里找。如果库位数不对,会呈粉红色。 
问题6 其他信息: 无法加载 DLL“bstdll.dll”: 找不到指定的程序。 (异常来自 HRESULT:0x8007007F)。 
换成X86的拿mingw编译出来的试出这问题,拿到在VB下就是 实时错误53:找不到DLL的意思了。这个估计就是跟安装了vs2015的问题有关了。安装了vs2015后VC++估计把我一些32位的库给弄掉了,怎么都无法成功了。尝试下个msvc 32位的编译看是否一样。
问题7 error: C2373: “saveImage”: 重定义;不同的类型修饰符 同样的代码用64的编译器和MinGW都没问题,换成32位的msvc就出问题了, .h文件
extern "C" BSTDLLAPI void __stdcall saveImage(const char *file);.cpp文件
void  saveImage(const char *file){dev.savePicture(file);}平常看到的讲解导出dll都没要求实现里也要加上__stdcall ,这里报错就是这个原因,.cpp里也加个__stdcall 就OK了。
1
2
3
1
问题8 其他信息: 无法在 DLL“xxx.dll”中找到名为“xxx”的入口点。到这一部至少说明,dll可以被找到,目标平台和生成的dll也是一致的,只是入口函数找不到,可能是导出名不对了,depends查看下果然名字被过度修饰了。变成了_function@bytenum形式。 怎么解决我不知道msvc的编译器有没有这个选项,直接改成这个名字算了。
问题9 发生了 PInvokeStackImbalance 对 PInvoke函数的调用导致堆栈不对称。 
先看看是不是调用协议不对,vb是__stdcall,vc++默认用__cdecl,如果一致了还出错,那可能是long要改成int32,这个尝试改下就行了。我就是这么解决的。
到此,无论是64还是32位都能用了。坑好多啊。MinGW版不知道为什么就是错误提示找不到dll,装了个VS2015麻烦这么多。有知道的大神可以解惑下。 有些人说MinGW版编译的dll不能在window下用是有问题的,反正我不装VS2015时一切都好好的。如上篇所述,而且也在别人机子上试过。现在没时间找这个问题了,能用就行了。

VS里正常的代码在QT里执行有问题?要怎么弄好QT的?