草庐IT

Qt之UDP通信

全部标签

windows - 如何让Qt Creator的jom.exe在带空格的路径中复制文件?

当我放入我的.pro文件时INSTALLS+=INSTALLINSTALL.files+=install/**INSTALL.path=binjom.exeinstall命令尝试使用绝对路径复制文件copy/yc:\SomeProject\install\QtGui4.dllc:\SomeProject\bin这失败了Thenumberofparametersisinvalid更好的命令是引用路径copy/y"c:\SomeProject\install\QtGui4.dll""c:\SomeProject\bin"哪个成功了。如何让jom.exe引用绝对路径或使用相对路径?

c++ - 俄语(或非拉丁语)文件名加载 Qt Windows

我正在尝试在包含非拉丁字符的Qt/C++软件上加载文件。一个使用俄语文件名的用户报告的问题,我试图用下面的代码快速修复它。示例文件名是(我不会读或写俄语!):Летнийсад.dgrboolQDepthmapView::loadFile(constQString&fileName){m_open_file_name=fileName;m_redraw_all=1;//thisfixestheproblemonaMacOSXbutNOTonWindows!QByteArrayba=fileName.toUtf8();char*file=ba.data();//endoffixif(pD

c++ - 静态构建 Qt,找不到 MinGW

我正在尝试构建Qt的静态版本,因此我可以为我的项目制作一个.exe文件。我找到了this教程,并且正在使用教程作者制作的脚本。当我尝试运行脚本时,我的PowerShell给了我这个>BuildingstaticQtversion5.3.1ERROR:MinGWenvironmentnotfound,noQtprebuiltversion?PressEntertocontinue...:这是不可能的。我知道这一点,因为我已经使用Qt5制作了项目并使用我的MinGW编译器构建了它们。一些附加信息:MinGW位于:C:/Qt/Tools/mingw491_32(/bin/gcc.exe)当我

c++ - 如何在 Qt C++ 应用程序中显示带有大量小部件的可滚动列表作为项目?

目标:在Windows7、10下的Qt5C++应用程序中拥有一个可滚动的自定义小部件列表,数量达数千(可能更多)。问题:将窗口最小化到任务栏并再次恢复后,程序停止响应。虽然它不会崩溃。CPU使用率常量为25%。即使在等待几分钟后,GUI也不会再次响应。此外,通常会消耗大量内存(超过200M),我认为即使对于100kQLabels(每个QLabel大约2k)来说也太多了。Here是针对类似问题的一些建议解决方案,但我认为这些解决方案不适合我的情况。示例:下面的示例说明了这个问题。为了演示,使用了QLabels列表,但它可以是派生自QWidget的任何类。主窗口.h#ifndefMAINW

c++ - 两个进程之间的通信

之前已经讨论过这个问题,但我一直在努力解决这些问题,所以希望能得到一个更适合我情况的更清晰的答案:我正在32位Windows(最低要求是WinXP)下用C++开发一个应用程序,它需要跨两个进程进行通信。要害就是进程1(p1)需要启动进程2(p2),然后调用p2的各种函数。我需要p1停止它正在做的事情,直到它调用的p2函数完成,然后从它停止的地方继续。对我来说最好的研究方法是什么,这样我才能做这样的事情?祝一切顺利克里斯 最佳答案 我知道远程过程调用听起来更吸引人,因为它消除了设计您自己的“通信协议(protocol)”和序列化您自己

c++ - Windows 中的 Qt : build environment and redistribution problems

我想就无休止的“QtvswxWidgets”问题的一个特定方面征求您的意见。在Windows中使用wxWidgets,我可以继续使用我喜欢的构建工具和编译器(在我的例子中是VisualStudio)。我只需要将wxWidgetsinclude和lib目录添加到编译器/链接器路径。必要时,我只是打开一些wxWidgets表单设计器(如DialogBlocks)并进行表单布局。可执行文件没有任何额外的依赖关系,也不会在重新分发时造成任何问题。另一方面,Qt带有自己的IDE,它往往是主要的开发工具(我不想要)。它安装MinGW。它使用qmake,这是将Qt集成到现有构建环境的又一个挑战。我不

c++ - QT Creator——跨平台编译

为Windows、Mac和Linux编译!唯一的方法是……在每个操作系统上安装QTCreator并编译自己的版本吗?(目前在MacOSX下运行QTCreator) 最佳答案 QtCreator只是一个自动化工具,它会为您创建Makefile和相关文件。如果你想交叉编译,只需扩展你的Makefile就可以交叉编译,例如,通过:exportTARGET=i686-mingw32CXX=$TARGET-g++RANLIB=$TARGET-ranlibAR=$TARGET-armake-fMakefile.mingw引用是here.请注意,

c++ - 如何在 QT 中开发美观、视觉现代的应用程序?

我想知道如何在QT中开发视觉上现代且具有吸引人的GUI应用程序。当我运行QTCreator并开始新项目时,GUI看起来非常基本和“纯粹”,就像简单的win32应用程序一样。但是看看AllegorithmicSubstanceDesigner2的例子,它的GUI看起来有点类似于WPF。还有许多其他具有漂亮GUI的应用程序。所以,问题是:如何做到这一点?QT是否有任何扩展/库提供更丰富的GUI体验?还是必须从头开发?感谢您提前回复。 最佳答案 除了Nano的回答,我认为您值得花时间搜索其他人制作的任何Qt样式表。例如,thisone模仿

java - 如何让 2 个 Java 应用程序相互通信?

我有2个Java应用程序。首先,我可以随意编辑,但稍后我会将其编译为机器代码。第二个我无法编辑,但我可以为它写一个插件。我需要让该插件能够与第一个应用程序对话。一般只是简单地互相发送字符串。进程的输入和输出流不是我的选择。我正在考虑使用tcp套接字客户端/服务器或将充当缓冲区的文件。但是这两种方式对我来说都有点难看,谁能给我一个更好的主意? 最佳答案 这取决于您要传输的数据类型。如果只是String,那么:如果numberofprocess=2并且您对此有把握,那么stdin&8stdout是最好的前进方式。您可以使用Process

c++ - 删除 msvc dll 依赖以运行 qt 应用程序

如何删除msvcdll(例如:msvcr100.dll)依赖性以运行qt应用程序?我开发了一个qt应用程序,它在dveloper机器上运行良好,但无法在任何其他机器上运行,并给出错误消息“程序无法启动,因为您的计算机中缺少MSVCR100.dll”。我可以通过在应用程序文件夹中复制该文件来解决此错误,但我不想复制,而是想静态链接或以其他方式删除该依赖项。提前致谢 最佳答案 问题是您可能正尝试在安装了与用于构建应用程序本身的版本不同的VisualStudio(MSVC)版本的计算机上运行应用程序。通常,正确的解决方案是在目标机器上安装