草庐IT

Qt-Quick

全部标签

c++ - 如何使用QT获取计算机的本地IP地址

这个问题在这里已经有了答案:GetlocalIPaddressinQt(6个答案)关闭7年前。我想在QT中获取计算机的本地IP地址(IPV4)。我找到了以下代码:QNetworkInterface*inter=newQNetworkInterface();QListlist;list=inter->allAddresses();QStringstr;for(inti=0;i通过for循环,我可以看到list中有许多值(ip's),其中之一是我通过键入ipconfig在命令窗口中。我的问题是如何区分list中的所有ip地址和ip地址?

c++ - 将字符数组的内容复制到 Qt 中的 QString

我有一个字符指针,在任何运行中都可以有不同的长度。例如:char*myChar;在一次运行中,它的内容可以是“嗨”,而在另一次运行中,它可以是“再见”。我想将myChar的内容复制到QString,例如,如果我有:QStringmyString;我想把myChar的内容复制到myString;我该怎么做? 最佳答案 使用QString::fromLatin1(constchar*),QString::fromLocal8Bit(constchar*)或QString::fromUtf8(constchar*)视情况而定。请注意,您不

c++ - 从 Qt 中的多个线程绘制

我正在用Qt编写一个程序,它运行10个工作线程来计算物体在空间中的轨迹。他们还必须绘制对象的路径。我有一个派生QGraphicsEllipseItem的“Body”类,它里面有一个QPainterPath。“模拟”类采用世界上的障碍物列表,模拟并运行body,直到body与某物发生碰撞。模拟在单独的线程中运行(通过moveToThread完成,而不是通过继承QThread)。当body发生碰撞时,模拟会发出一个信号,表明它已完成。当所有线程都完成后,我想绘制路径(我通过调用“Body”中的一个方法来实现,该方法在其draw方法中启用路径绘制)。不幸的是,我收到ASSERT错误:ASSE

c++ - 将新项目添加到基于 QAbstractListModel 的模型时,QML View 不会更新

我已经弄清楚如何将派生自QAbstractListModel的模型绑定(bind)到QMLView。但是接下来我累了就不行了。如果将新项目添加到模型,QMLView将不会更新。这是为什么?DataObject.hclassDataObject{public:DataObject(constQString&firstName,constQString&lastName):first(firstName),last(lastName){}QStringfirst;QStringlast;};SimpleListModel.hclassSimpleListModel:publicQAbstr

c++ - Qt QSettings 尝试创建 ini 文件但没有创建为什么?

我正在尝试创建ini文件来保存配置数据,我有单例类像这样设置QSettings对象:...#DEFINECONFIG_FILE_NAME"myconfig.ini"m_pSettings=newQSettings(QDir::currentPath()+"/"+CONFIG_FILE_NAME,QSettings::IniFormat);这符合文档,但是当我查看我的应用程序目录时,没有创建任何myconfig.ini文件,我做错了什么? 最佳答案 我相信为了强制显示QSettings文件,您至少需要在其中设置一个值,然后调用sync

c++ - Qt——QWidget到底是什么

在C++GUIProgrammingwithQt4一书中,第一章的一个例子中提到QWidget作为应用程序的主窗口.并且,在Qt引用文档中:http://doc.qt.io/qt-4.8/qwidget.html有很多关于QWidget的信息。但是,什么是基线?QWidget主要做什么?我应该什么时候考虑? 最佳答案 一种思考方式是,任何知道如何在屏幕上显示自身的对象都是QWidget(特别是QWidget的某个子类)。有一些像QPicture这样代表图像的对象,但是QPicture自身不知道如何将自己放在屏幕上。例如,您通常需要将

C++ Qt 返回空 QString

我创建了一个返回QString的函数。在我的函数中的某些点,它应该返回一个空的QString。仅仅返回""是行不通的。当我使用QString::isEmpty()不是。我的“紧急计划”是返回一个“空”字符串并检查文本是否为“空”。但我认为这不是好的风格。那么如何返回一个空的QString呢? 最佳答案 创建空QString的惯用方法是使用其默认构造函数,即QString()。QString()创建一个字符串,isEmpty()和isNull()都返回true。使用文字""创建的QString为空(isEmpty()返回true)但不

c++ - 如何从 Qt 启动外部文件?

我想打开一个pdf文件,只需双击QListWidget的一个元素即可。我创建了一个批处理文件来打开AcrobatReader(reader.bat),但我想要一个特定的pdf文件:voidMainWindow::on_FileListWidget_itemDoubleClicked(QListWidgetItem*item){QFileSelectedModel(Current_Path+"/Template/"+item->text());QStringFileName;FileName=(Current_Path+"/Template/"+item->text());::syste

c++ - 有没有办法在qt中卸载eventfilter?

我只需要一段时间的事件过滤器,以后有没有办法卸载它? 最佳答案 请阅读eventsystemworksinQthere.这对于基本理解至关重要,尤其是这一段:TheQObject::installEventFilter()functionenablesthisbysettingupaneventfilter,causinganominatedfilterobjecttoreceivetheeventsforatargetobjectinitsQObject::eventFilter()function.Aneventfilterge

c++ - Qt 应用程序 : build with different Qt versions 的 CI

我使用Travis-CI为我的简单Qt应用程序进行持续集成。我的.travis.yml文件看起来像这样(基于thisgist):language:cppbefore_install:-sudoadd-apt-repository--yesppa:ubuntu-sdk-team/ppa-sudoapt-getupdate-qq-sudoapt-getinstall-qqg++qt4-qmakelibqt4-devqt5-qmakeqtbase5-devscript:-qmake-qt=qt4-v-qmake-qt=qt4-make-make-kcheck-makeclean-qmake-