草庐IT

Qt-Quick

全部标签

c++ - 如何在 Qt 中实现类似 Google map 的磁贴滚动?

我正在使用Qt/C++并尝试绘制一个大而复杂的QGraphicsScene。一旦我添加了很多对象,平移和缩放就会变得非常慢。(当然,这并不奇怪)。我玩过设备坐标缓存(有助于平移到一个点)和最小视口(viewport)更新等等,但最终对象太多了。我想做的是以某种方式从控制UI异步绘制项目。换句话说,就像Googlemap一样,我想平移和缩放并让绘图尽可能快地跟上,但能够在项目完成绘制之前再次平移。我正在尝试的一种方法是创建两个QGraphicsScenes。一个有实际的对象,但没有附加到QGraphicsView。另一个QGraphicsScene连接到QGraphicsView,但它只

c++ - 在 ARM 上使用 Qt 的简单程序中的段错误

我正在尝试在ARM系统上使用Qt4.7.4,以便在触摸屏上显示图形应用程序。我的ARM卡内嵌了Linux系统;我们使用Linuxframebuffer向屏幕发送信息,tslib+usbtouchscreen驱动获取触摸信息。我能够交叉编译Qt并将库放在我的系统上。但是当我启动我的测试程序时,我每次都在同一时刻遇到段错误(没有逻辑原因)。首先,这是我的测试程序(你可以看到它非常基础,没有理由出现段错误):#include#includeintmain(intargc,char*argv[]){QApplicationapp(argc,argv);QMessageBoxmsgBox;msg

c++ - Qt 中两个插件的信号/插槽交互

所以基本上我有一个加载两个插件并连接它们的小应用程序。加载后的第一个插件会创建一个没有任何标题的标签,该标签将被添加到主窗口。第二个插件创建一个将添加到菜单的操作。所以我的应用程序只需要加载这些插件并连接它们。连接它们是什么意思?我的意思是标签插件包含一个插槽,它将修改标签的标题,并且Action插件声明了一个信号。应用程序应connectAction插件信号与标签插槽。我不知道该怎么做。我的猜测是,实际上插件类实现是将自定义信号与标准信号(已触发)连接起来。但无论如何,我的应用程序无法按预期工作。如何在我的应用程序中正确连接一个插件的信号和另一个插件的插槽??这是我的标签插件代码:#

c++ - 在 Qt 中混合两个不同的图像

我的程序生成3个不同的图像,我想使用一些不透明度设置将它们组合起来。首先我有原始图像,我已经将其转换为QPixmap以在QGraphicsView中显示它。.然后我对这张图片进行了一些计算并生成了一个QImage,因为我需要基本的像素访问,我还添加了一个图例。.我想做的是能够混合两个图像,同时能够修改不透明度。我没有显示示例的工具,它应该如下所示:但是第一张图像和数据图像混合了不透明度。我也希望图例保持100%可见。如果需要,我可以为图例创建不同的QImage。我也清楚地知道哪个像素应该被认为是透明的而不是白色的。将来我想只用一个slider来调整不透明度,所以我认为如果有一个解决方案

C++ QT OSX Qt::META+Qt::Key_Tab 快捷键绑定(bind)

我正在尝试在QTabWidget中绑定(bind)Qt::META+Qt::Key_Tab快捷方式来切换标签(就像它在Chrome或许多其他应用程序)。我已经尝试了在谷歌中找到的每一个解决方案,但这个快捷方式组合不起作用。我试过:Qt::Key_Control+Qt::Key_Tab、Qt::Key_Meta+Qt::Key_Tab组合code>,QKeySequence(Qt::Key_Meta,Qt::Key_Tab),QKeySequence(Qt::META,Qt::Key_Tab)等QShortcutQAction使用虚拟QWidget::event捕获键使用虚拟QWidge

c++ - Qt Android 上缺少 QSGContext

我正在为Android开发应用程序。开发是在Linux上完成的,使用带有C++和QML的QtCreator。因为我一整天都在扯我的头发,那件事似乎不太明显,我想知道是否有人能对调试器冲出的错误有任何线索:Couldnotloadsharedlibrarysymbolsfor85libraries,e.g./system/bin/linker.W/Qt(24399):kernel/qcoreapplication.cpp:418(QCoreApplicationPrivate::QCoreApplicationPrivate(int&,char**,uint)):WARNING:QApp

与 Qt 4 (QtQuick 1.x) 和 Qt 5 (QtQuick 2.x) 兼容的 C++/QML 项目

当编写不使用QML且不依赖于新的Qt5功能的Qt应用程序时,我们可以同时使用Qt4和Qt5对其进行编译(除了少数源代码不兼容)。当我们想要使用Qt5功能但又想退回到等效但效率较低的Qt4解决方案时,我们可以简单地使用#if检查Qt版本,例如使用新的QStringLiteral但回到QString::fromUtf8使用Qt4编译时。我们怎样才能用QtQuick做同样的事情?请注意,可以使用QDeclarativeView与QtQuick1.x在Qt5中,但这不会使用Qt5中的新场景图。只有1.x在QDeclarativeView中得到支持并且只有2.x在QQuickView中得到支持,

c++ - 将 Google 地球嵌入到桌面应用程序而非网站中。 QT 是一个真正的选择吗?

我打算开发一个桌面应用程序来模拟环绕地球运行的卫星摄像机。我想在桌面应用程序中使用Google地球,而不是将其嵌入到网站中。显然GoogleEarthAPI是唯一的选择优惠是针对网页的我读了StackOverflowpost使用QT可以将Google地球嵌入到桌面应用程序中,但是所引用网站中的大多数链接都已损坏,因此缺少有关该主题的大量信息。此外,我找到的所有信息都非常古老。谁能建议我在桌面应用程序中嵌入Google地球的方法?我对C++、ADA和VisualBasic有一些经验,但对QT一无所知。 最佳答案 将Google地球嵌入

c++ - QT复制到QTemporaryFile

我想复制some/path/myfile在$TMPDIR/myprog-.ext,这样我就可以将它传递给第3方程序,该程序会阻塞无扩展名文件。这是我想要的工作:QStringoriginalPath="some/path/myfile";QTemporaryFilef(QDir::temp().absoluteFilePath("mprog-XXXXXX.ext"));//f.open();?QFile(originalPath).copy(f.fileName());但是,我现在遇到了一个问题-要么该文件尚不存在,因此还没有分配临时fileName(),或者文件名已分配但文件本身已经

c++ - Qt 中不一致的 XML 符号

我正在使用Qt和C++来读/写XML文件。虽然我只使用Qt类,但有一个奇怪的行为。QDomDocumentdocument;QDomElementelement=document.createElement("QString");QDomTexttextNode=document.createTextNode("");//Emptystring.element.appendChild(textNode);有时XML文件中的结果是有时它是.有谁知道为什么会这样? 最佳答案 因为您没有提供MCVE,我写道:#include#includ