Questions tagged «qt»

Qt是一个跨平台的应用程序开发框架,广泛用于开发应用程序软件,该应用程序可以在各种软件和硬件平台上运行,而底层代码库几乎没有变化,而具有本机应用程序的功能和速度。Qt具有商业和开源许可证。

8
如何将int转换为QString?
Наэтотвопросестьответына 堆栈溢出нарусском:КакпреобразоватьINTв的QString? 是否有一个QString接受int并将其输出为in的函数QString?
360 c++  qt  type-conversion 

10
如何将QString转换为std :: string?
我正在尝试做这样的事情: QString string; // do things... std::cout << string << std::endl; 但是代码无法编译。如何将qstring的内容输出到控制台(例如出于调试目的或其他原因)?怎么转换QString成std::string?

5
使用Qt-Designer自动展开布局
我正在使用Qt Designer。 我想创建一个QVBoxLayout将自动扩展以填充整个窗口的窗口。 QVBoxLayout遗迹的布局是固定的。 如何QVBoxLayout使设计师扩展并填充整个窗口?
217 qt  layout  qt-designer 

14
STL或Qt容器?
使用Qt容器的优点和缺点(QMap,QVector在他们的STL等价物,等等)? 我可以看到一个偏爱Qt的原因: Qt容器可以传递到Qt的其他部分。例如,可以使用它们先填充a QVariant,然后填充a QSettings(尽管有一定限制,但仅接受QList和QMap/且QHash其键为字符串)。 还有其他吗? 编辑:假设应用程序已经依赖Qt。
185 c++  qt  stl 


6
如何在Qt Creator中启用C ++ 11?
标题很容易描述。我已经下载了Qt Creator 2.7.0,并且正在尝试编译一些基本的C ++ 11代码: int my_array[5] = {1, 2, 3, 4, 5}; for(int &x : my_array) { x *= 2; } 我收到以下错误: range based for loops are not allowed in c++ 98 mode 但是,根据本文,此版本的Qt Creator支持C ++ 11。那么如何启用它呢?
167 c++  qt  c++11 

12
使用Qt时如何打印到控制台
我正在使用Qt4和C ++制作计算机图形学中的某些程序。我需要能够在运行时在控制台中打印一些变量,而不是进行调试,但是cout即使添加了这些库,它似乎也不起作用。有没有办法做到这一点?
159 c++  qt  cout 



19
超越堆栈采样:C ++ Profiler
黑客的故事 日期是2010年12月2日。圣诞节前的日子不多了,作为Windows程序员,我几乎遇到了一个主要障碍。我一直在使用AQTime,尝试过困倦,发亮和非常困倦,而正如我们所说的,VTune正在安装。我曾尝试使用VS2008 Profiler,但它一直在积极地惩罚着人们,而且常常是不明智的。我使用了随机暂停技术。我已经检查了呼叫树。我已经解雇了功能痕迹。但令人悲伤的事实是,我正在使用的应用程序超过一百万行代码,可能还有价值一百万行的第三方应用程序。 我需要更好的工具。 我已经阅读了其他主题。 我已经尝试了每个主题中列出的每个事件探查器。简直就是必须有比这些笨拙而昂贵的选择更好的东西,或者可笑的工作量几乎没有收益。更复杂的是,我们的代码具有大量线程,并运行许多Qt Event循环,其中某些循环如此脆弱,以至于它们由于时序延迟而在繁重的测试中崩溃。不要问我为什么我们要运行多个事件循环。没有人能告诉我。 在Windows环境中,Valgrind还有更多选择吗? 有没有比我已经尝试过的一堆破烂的工具更好的东西了? 是否有任何旨在与Qt集成的东西,也许可以在队列中显示有用的事件? 我尝试过的工具的完整列表,以及在斜体中真正有用的工具: AQTime:很好!深度递归会遇到一些麻烦,但是在这些情况下,调用图是正确的,并且可以用来消除您可能遇到的任何混乱。不是一个完美的工具,但是值得尝试。它可能适合您的需求,并且在大多数情况下对我来说已经足够了。 调试模式下的随机暂停攻击:没有足够的时间信息。 一个好的工具,但不是一个完整的解决方案。 并行工作室: 核选项。引人入胜,古怪而疯狂。我认为您应该进行30天的评估,并确定是否合适。这也太酷了。 AMD Codeanalyst:很棒 ,易于使用,非常容易崩溃,但是我认为这是环境问题。我建议您尝试一下,因为它是免费的。 卢克·斯塔克沃克(Luke Stackwalker):在小型项目上运行良好,这是在尝试使其在我们的项目上运行。虽然有一些不错的结果,但是它绝对可以代替Sleepy来完成我的个人任务。 PurifyPlus:不支持Win-x64环境,最主要的是Windows7。否则,它非常出色。我在其他部门的许多同事对此表示肯定。 VS2008 Profiler:在功能跟踪模式下以所需的分辨率产生100 + gigs范围的输出。从好的方面来说,产生可靠的结果。 GProf:要求GCC还要适度有效。 VTune:VTune的W7支持犯罪分子的边界。否则优秀 PIN:我需要破解我自己的工具,所以这是最后的选择。 Sleepy \ VerySleepy:对于较小的应用程序很有用,但在这里让我失望。 EasyProfiler:如果您不介意使用一些手动注入的代码来指示要检测的位置,那还不错。 Valgrind:仅* nix,但在那种环境下非常好。 OProfile:仅Linux。 亵渎:他们射击野马。 我没有尝试过的建议工具: XPerf: 发光代码: 开发伙伴: 注意:目前是 Intel环境。VS2008,增强库。Qt 4+。而所有这些令人沮丧的杂物:通过trolltech进行Qt / MFC集成。 现在:大约两周后,看来我的问题已解决。借助各种工具,包括列表中的几乎所有内容以及我的一些个人技巧,我们找到了主要的瓶颈。但是,我将继续测试,探索和尝试新的探查器以及新技术。为什么?因为我欠你们,因为你们摇滚。它确实使时间线放慢了一点,但是我仍然很高兴继续尝试新工具。 简介 在许多其他问题中,最近将许多组件切换到了错误的线程模型,由于下面的代码突然不再是多线程的,导致了严重的问题。我不能说太多,因为它违反了我的NDA,但是我可以告诉您,通过偶然检查甚至常规代码检查都不会发现它。如果没有探查器,通话记录和随机暂停的共同作用,我们仍然会对天空的美丽蓝色弧线大怒。值得庆幸的是,我与一些我见过的最好的黑客一起工作,而且我可以接触到一个充满了强大工具和才华横溢的“诗篇”。 绅士们,我非常感谢您,很遗憾,我没有足够的代表来奖励你们每个人。我仍然认为,这是一个重要的问题,比到目前为止我们在SO上获得的答案更好。 …

3
如何为Visual Studio 2010构建Qt
我很难找到一种方法,该方法为在V​​isual Studio 2010中使用Qt提供了一个稳定的解决方案,因此在收集了所有信息并进行了一些反复试验之后,我想将解决方案写进指南中。 问题,或者为什么无法使用预构建的二进制文件? 在某些特殊情况下,似乎可以使用为Visual Studio 2008构建的二进制文件,但是我发现它们不起作用。在我的情况下,它们编译正常,但是会产生运行时错误,如下所示: 或从Visual Studio 2010启动时: 更新:我发现了一篇博客文章,分析了为什么它对某些人有用,而对其他人却无效。一句话,这取决于您是否在同一台计算机上安装了Visual Studio 2008。 http://blog.paulnettleship.com/2010/11/11/troubleshooting-visual-studio-2010-and-qt-4-7-integration/ 最重要的事情(我愚蠢地没有意识到)是,如果您没有安装Visual Studio 2008,则无法使用Visual Studio 2008编译的库和dll(可从Qt网页上获得)。原因是因为您下载的Qt SDK是一个调试版本,它依赖于VC9.0 DebugCRT,这意味着它需要安装Visual C ++ 2008 Debug Runtime,该版本无法作为可再发行的安装程序使用。安装DebugCRT的唯一方法是安装整个Visual Studio 2008。

10
qmake:找不到Qt安装”
我在ubuntu中有一个软件,要求我运行qmake生成Makefile。 但是,运行qmake会返回此错误, qmake: could not find a Qt installation of '' 我已经安装了我认为是必需的软件包, sudo apt-get install qt4-qmake sudo apt-get install qt5-qmake 但是错误并没有消失。 任何帮助将不胜感激!
136 qt  ubuntu  qmake 

4
在Qt 5中连接过载信号和插槽
我难以掌握Qt 5中的新信号/插槽语法(使用指向成员函数的指针),如“ 新信号插槽语法”中所述。我尝试更改此: QObject::connect(spinBox, SIGNAL(valueChanged(int)), slider, SLOT(setValue(int)); 对此: QObject::connect(spinBox, &QSpinBox::valueChanged, slider, &QSlider::setValue); 但是尝试编译时出现错误: 错误:没有匹配的调用函数 QObject::connect(QSpinBox*&, <unresolved overloaded function type>, QSlider*&, void (QAbstractSlider::*)(int)) 我已经尝试在Linux上使用clang和gcc,两者都使用-std=c++11。 我在做什么错,该如何解决?
133 c++  qt  qt5 

29
无法在模拟器中启动AVD:找不到QT库
我是Android Studio的新手,使用模拟器时遇到问题。当我尝试运行时,它总是崩溃说: “无法在模拟器中启动AVD” [6816]:错误:./ android / qt / qt_setup.cpp:28:在C:\ Users \ Jay \ AppData \ Local \ Android \ Sdk \ emulator \ lib64 \ qt中找不到Qt库\ lib 无法启动'C:\ Users \ Jay \ AppData \ Local \ Android \ Sdk \ emulator / qemu / windows-x86_64 / qemu-system-i386.exe':没有这样的文件或目录 我已经从BIOS设置中启用了VT-x,但出现了问题。我已经搜索了很多,找不到答案。任何帮助都感激不尽。谁能给我解决方案? 错误的屏幕截图


By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.