草庐IT

c++ - 加速 Qt 中的 Oracle 数据库接口(interface) (QOCI)

我有一个项目涉及将Oracle数据库集成到Qt桌面应用程序中。由于Qt有一个非常易于使用的数据库交互界面,我编译了QOCI驱动程序以支持Oracle连接。一切正常,但查询的处理时间非常慢。我怎样才能提高性能?我处理任意查询的代码如下所示:QList>DBWrapper::executeQuery(QStringconst&queryString){QList>results;if(_db.isOpen()){QSqlQueryqry(queryString);if(qry.exec()){while(qry.next()){QListrow;results.append(row);fo

c++ - Qt 应用程序 : Failed to load platform plugin “windows”

我在互联网上看到过很多关于这个特定错误消息的话题。我所看到的所有答案似乎都假定用户已经听说过一种叫做Qt的东西并且想用Qt做一些事情。我在运行TeXworks时收到此消息。多年来,TeXworks对我来说一直很完美,直到有人付钱为我的电脑做一些维护,决定删除我的所有文件,然后用机器人的声音向我背诵样板通知。我从未在任何其他方面听说过Qt,我对Qt也不感兴趣。我试图让TeXworks像往常一样运行。是否有可能给出关于如何处理这个问题的答案,而不是假设我是带着对Qt的某种兴趣和知识来到这里的? 最佳答案 首先,检测丢失了哪些.dll文件

c++ - 如何简单地序列化复杂结构并在 Qt 中通过网络发送它们

我正在创建一个客户端服务器应用程序,现在我正在处理一种最简单的方法来序列化一些类,交付给另一端,然后放回我以后可以使用的类。我意识到这并不简单,有些人可能会说用C或C++等低级语言是不可能的,但实际上可以通过大量编码实现。我想知道是否其他人已经没有为此创建一个解决方案,它是可移植的并且可以工作,所以我不需要重新发明轮子。目前我的解决方案(可能有点太复杂):每个要序列化和反序列化的类都继承自抽象类Serializable,它包含两个函数:QHashToHash();voidLoadHash(QHashhash);第一个函数创建一个包含所有公共(public)和私有(private)变量的

c++ - 如何使用 Qt 防止 QCursor::setPos() 上的 mouseMoveEvent?

我目前正在开发图像查看器应用程序。在这个应用程序中,我有一个所谓的“pan-zoom”功能。这意味着,当按住某个鼠标按钮时,用户可以通过前后平移来缩放图像。它工作正常,但随着使用该功能,鼠标(自然地)在屏幕上上下移动,并会在某个点到达屏幕边界,这将使其停止。相反,我想要一种鼠标保持静止并且只有图像放大率发生变化的行为。我试图通过在QWidget::mouseMoveEvent中调用QCursor::setPos并在处理完移动后将鼠标重置到初始位置来实现这一点。它的工作原理是鼠标几乎保持静止(它来回摆动)。但是,这将导致再次调用鼠标移动事件,从而有效地取消我刚刚所做的调整。这将导致“摆动

c++ - 如何在 Qt 主线程中正确执行 GUI 操作?

我有一个包含两个线程的简单程序:由QtQApplication::exec操作的主要GUI线程由boost::asio::io_service操作的TCP网络线程TCP事件,例如连接或接收数据会导致GUI发生变化。大多数情况下,这些是QLabel上的setText和隐藏各种小部件。目前,我正在TCP客户端线程中执行这些操作,这似乎很不安全。如何将事件正确发布到Qt主线程?我正在寻找boost::asio::io_service::strand::post的Qt变体,它将事件发布到boost::asio::io_service事件循环。 最佳答案

c++ - 为什么 Qt 会从 .qrc 生成一个 .cpp 文件?

Qt在编译资源时生成一个.cpp文件,例如图像,它们在.qrc文件中定义。编译输出如下:/usr/local/Qt-5.5.1/bin/rcc-nameimages../myApplication/images.qrc-oqrc_images.cppg++-c-pipe-g-std=c++0x-Wall-W-D_REENTRANT-fPIC-DQT_QML_DEBUG-DQT_DECLARATIVE_DEBUG-DQT_QUICK_LIB-DQT_MULTIMEDIA_LIB-DQT_GUI_LIB-DQT_QML_LIB-DQT_NETWORK_LIB-DQT_SQL_LIB-DQT

c++ - 为什么 Qt 对着我尖叫德语?

Modul"QtQuick.Controls"istnichtinstalliert我真的不会说德语,我想知道是否有人知道为什么Qt调试输出以英语开始,但切换为德语,导致出现如上所示的消息。我已经在我的所有文件中搜索了German和DE等,但没有成功。我已经在网络和StackOverflow上进行了搜索,但似乎只有我一个人遇到了这个问题。我运行的是Windows7专业版。谁能告诉我为什么切换到德语和/或如何将其改回英语? 最佳答案 这很可能是QTQTBUG-48946“windeployqtaccumulateslocaleswhe

c++ - 当在 QListWidget 中启用触摸屏时双击事件不起作用 QT

我使用此代码在QListWidget中启用触摸屏ui->listWidget->setAttribute(Qt::WA_AcceptTouchEvents,true);ui->listWidget->setVerticalScrollMode(QAbstractItemView::ScrollPerPixel);ui->listWidget->setHorizontalScrollMode(QAbstractItemView::ScrollPerPixel);QScroller::grabGesture(ui->listWidget,QScroller::TouchGesture);触

c++ - Qt Creator 如何运行 SUBDIRS 项目

我已经使用QtCreator一段时间了,我的项目越来越大,我想转而使用Qt'sSUBDIRS模板类型,以更好地组织我不断发展的项目。我的项目结构类似如下/master|---master.pro`---project1||---project1.pro|`---...(sourcefilesspecifictoproject1)`---project2||---project2.pro|`---...(sourcefilesspecifictoproject2)`---shared`---...(sourcefilessharedbetweenproject1andproject2)p

c++ - 如何在 Qt 样式表中使用嵌入字体?

我在我的.qrc资源文件中添加了一个字体名称“:font/Oswald-Regular.ttf”。我想在我的Qt样式表中为所有QLabel使用它。这是Arial的代码:QLabel{color:white;font:10pt"Arial";} 最佳答案 将字体添加到main中的字体数据库:QFontDatabase::addApplicationFont(":/fonts/Oswald-Regular.ttf");您可能需要检查函数返回值(0表示成功)和/或数据库中可用的字体:QFontDatabasedb;for(inti=0;i