草庐IT

Qt5Network

全部标签

c++ - QT - 主要小部件 - 堆栈还是堆?

我有点困惑是应该在堆栈上还是在堆上初始化我的主要小部件。在“使用QT4进行C++GUI编程”中,主要的小部件是在堆栈上初始化的。在我说更多之前,我先解释一下我的意思:intmain(intargc,char*argv[]){QApplicationapp(argc,argv);MainWindowmainWin;mainWin.show();returnapp.exec();}现在,也许这只是因为它更安全,也许是因为他们不想让读者对QT中的内存分配感到困惑。省略对从QObject继承的对象的任何删除操作肯定会让读者“忘记”QT对象的内存管理。但是,我的问题是,我们应该更喜欢这种方法还是

c++ - 将 Qt 模型/ View 与非表格数据和非表格/列表 UI 一起使用?

我一直在阅读Qt的模型/View框架。我发现它对处理表格数据(如数据库中的表格)非常有帮助。我的问题是:它对非表格数据(如属性列表)或只是一些各种类型的数据有用吗?如果是这样,我应该如何处理它?目标是为某些属性列表(如数据)设计一个编辑器。该列表是在运行时构建的,元素有多种类型(数字、字符串、bool值和文件路径,仅举几例)。每个元素基本上都是一个名称-值对。每个元素的名称、类型和限制(例如限制)在编译时定义。它们将在运行时根据用户输入组装成不同的列表。并且元素列表可以在编辑session期间更改。UI很可能是根据用户输入组装的各种预先设计的小部件的组合。它们可能不是列表或表格View

c++ - QTableview 问题中的 Qt 自动完成 QCombobox

我有一个QTableView,其中有一列带有QComboBoxQItemDelegate。有一个组合框的完成列表。当您开始输入并按回车键时,完成就正确了(注意大写字母)(按回车键)->但是当我按下tab键时,它并没有包含大写字母。(按标签)->但是当我在一个免费的ComboBox上尝试这个时,它会正确地自动完成(按标签)->我没有在任何地方捕获Tab输入事件,所以我不确定是什么导致了这个问题。会是什么? 最佳答案 看起来非常像QTableView处理Tab键的方式——触发单元格之间的导航,完成者没有接收到它。当然,commitDat

c++ - Qt 的持续构建系统

我是一名Qt/C++开发人员。我想设置一个持续集成环境,在提交源代码后,它会触发一个构建过程,为我正在使用的3个平台构建代码:Linux操作系统Win32如果可能,我该如何设置这样的环境。欢迎任何提示或链接。我已经阅读了有关Jenkins的资料,但我找不到任何好的教程。 最佳答案 我还出于以下几个原因建议Jenkins:它将在您列出的所有平台上运行。它可以配置为在存储库更新时开始构建(提示:将作业配置为“轮询SCM”,您不必费力地使用您的SCM工具来让它告诉Jenkins开始构建)。它为单元测试提供了良好的支持(主要是通过插件)。[

c++ - 使用 Qt、Wt 或 NaCl 构建框架?

我正在考虑设计一个框架,以允许一个C++代码库成为适用于大多数主要平台(MacOS、Windows、Linux和可能的Android)的桌面应用程序和Web应用程序。我已经确定Qt最适合桌面构建,但是我在GoogleNativeClient和Wt之间对WebApp部分产生了冲突。Wt代码可能更容易与Qt代码兼容,但是我听说Wt实际上是AJAX输出,所以我不知道这对性能有多大影响(我打算用它开发一个游戏引擎,所以我需要性能)。另一方面,NaCl更……天然。但是好像乱七八糟的,尤其是JS集成,我只想用C++写完就完事了。另外我不知道它与Qt的兼容性如何。我已经研究了好几个星期了,但我对两者

c++ - 是否可以在启用 webkit 的情况下构建静态 Qt 库?如何?

我尝试使用以下命令构建静态Qt库:./configure--prefix=/usr/local/qt--static--accessibility--multimedia--audio-backend--svg--webkit--javascript-jit--script--scripttools--declarative--dbus--debug但是我收到一条消息说:WARNING:UsingstaticlinkingwilldisabletheWebKitmodule.是否可以在启用所有模块的情况下构建静态Qt库?以及如何?谢谢 最佳答案

c++ - Qt 从非源文件中翻译字符串

我有一个使用XML文件的Qt项目。这些XML文件包含人类可读的文本,该文本应使用Qt工具(lupdate、lrelease、QtLinguist)进行翻译。问题是,是否可以通过lupdate在.ts文件中生成条目,而无需使用QT_TR_NOOP()宏和friend从源代码文件中的XML文件复制字符串?或者一般来说,如何翻译Qt项目的非源文件中的字符串? 最佳答案 我们遇到了同样的问题:包含人类可读字符串的XML文件。我们的解决方案是确保XML文件中的人类可读字符串易于提取(我们将它们放在LABEL属性中)并且我们开发了一个可以解析X

c++ - 在 Xcode 中开发 QT 应用程序?

我选择的MacIDE(至少对于C++和Objective-C开发)是Xcode。我有一台64位IntelMac,安装了OSXLion,并从MacAppStore下载了Xcode4.2版。我的问题是Qt显然与Xcode4不兼容(它在启动由qmake生成的项目时崩溃),所以我基本上是在问如何将Qt与Xcode集成。我不必能够从Xcode运行和调试项目,只需构建它即可。所以我认为在Xcode中使用qmake作为外部构建系统可能是一个解决方案,问题是我不知道如何将qmake设置为我的构建系统,以便我可以在Xcode4中开发我的Qt应用程序。请帮我!:) 最佳答案

Ubuntu ARMv8编译Qt源码以及QtCreator

最近需要在NVIDIA小盒子上面跑一个程序,一开始想着在Ubuntux64下交叉编译一版,后来发现libqxcb.so这个库在configure时就会一直报错,多方查找怀疑可能是由于硬件不支持在x64环境下编译AMR架构的xcb库。所以最后在ARM下直接编译Qt源码了,在ARM下是可以编译成功libqxcb.so的,由于没有ARM下的QtCreator所以需要一起编译。一、编译Qt源码1.编译前环境配置sudoapt-getupdatesudoapt-getinstallgperfsudoapt-getinstalllibxcb*sudoapt-getinstallbuild-essentia

c++ - 截取特定窗口的屏幕截图 - C++/Qt

在Qt中,如何截取特定窗口的屏幕截图(即假设我打开了记事本并且我想截取标题为“无标题-记事本”的窗口的屏幕截图)?在他们的屏幕截图示例代码中,他们展示了如何截取整个桌面的屏幕截图:originalPixmap=QPixmap::grabWindow(QApplication::desktop()->winId());我如何在Qt中获取特定窗口的winId()(假设我知道窗口的标题)?谢谢 最佳答案 我很确定这是特定于平台的。winId是Windows上的HWND,因此您可以在您给出的示例中调用FindWindow(NULL,"Unt