草庐IT

QModelIndex

全部标签

ruby - QtRuby 使用参数/参数连接信号和槽

我想知道如何连接到带参数的信号(使用Rubyblock)。我知道如何连接到一个不带参数的:myCheckbox.connect(SIGNAL:clicked){doStuff}但是,这不起作用:myCheckbox.connect(SIGNAL:toggle){doStuff}它不起作用,因为切换槽采用参数voidQAbstractButton::toggled(boolchecked)。我怎样才能让它与参数一起工作?谢谢。 最佳答案 对您的问题的简短回答是,您必须使用slots方法声明要连接的插槽的方法签名:classMainGU

c++ - Qt中的跨越水平标题

我想合并(跨越)QTableWidget中的水平标题。我尝试用谷歌搜索相同的内容,但没有运气,因此发布了它。请指导我。 最佳答案 您可以子类化QHeaderView并为您想要跨越的每一组列/行创建一个部分,并连接信号和槽以使它们对不同的列/行使用react。以下示例用于跨越水平标题:#includeclassMyHeaderModel:publicQAbstractItemModel{public:MyHeaderModel(QObject*parent=0):QAbstractItemModel(parent){}intcolum

c++ - 如何从 QML 访问 QModelIndex 行

我的QML代码中有这个:TreeView{...onExpanded:{console.log("onExpandedcalled",index)}}这是调用时的输出:QModelIndex(1,0,0x5d9f5a0,TreeModel(0x5deae90))如何访问QML代码中的第一个值(1)? 最佳答案 如果您在QML中有一个对象并且您不知道如何访问它的属性,您总是可以使用:Object.keys(obejectInQuestion)。至少对于QModelIndex您为ListModel获取的getterrow()用于属性ro

c++ - 如何使我的 QAbstractTableModel 与我的数据存储保持同步?

在我的应用程序中,我有一个用于保存项目列表的类:classDatabase:publicQObject{Q_OBJECTpublic:Database(QObject*parent,constQString&name);constEntry&item(intidx)const{Q_ASSERT(idx&idxs);boolupdateItem(intidx,constEntry&updated);voidremoveItem(intidx);voidremoveItems(constQList&idxs);private:QList_items;signals:voiditemsRem

c++ - 删除行时 QModelIndex 变得无效

我将QAbstractItemModel子类化以在QTreeView中显示项目,并且在这个子类(projectModel)中,我有一个删除函数TreeView中当前选择的索引。Component是用来表示模型所有成员的类:voidprojectModel::deleteComponent(){QModelIndexchild_index=_treeview->selectionModel()->currentIndex();Component*child=static_cast(child_index.internalPointer());Component*parent=child-

c++ - 将 QModelIndex 转换为 QString

有没有办法将QModelIndex转换为QString?这背后的主要目标是我想使用动态生成的QListView-Items的内容。QFileSystemModel*foolist=newQFileSystemModel;foolist->setRootPath(QDir::rootPath());foolistView->setModel(foolist);[...]QMessageBoxbar;QStringfoolist_selectedtext=foolistView->selectionModel()->selectedIndexes();bar.setText(foolist

c++ - 如何完全遍历 QStandardItemModel?

我有一个QStandardItemModel,它显示在qQTreeView中。工作正常。为了突出显示相关行,我想突出显示其中的一些行:因此我有一个QStringList,其中包含要突出显示的QStandItem*的名称。QStringListnamesToBeHighlighted=getNames();QModelIndexin=myModel->index(0,0);if(in.isValid()){for(intcurIndex=0;curIndexrowCount(in);++curIndex){QModelIndexsi=myModel->index(curIndex,0,i

c++ - 如何在 QTableWidget : Qt5 中鼠标悬停时突出显示整行

我想在我的QTableWidget中突出显示鼠标悬停时的行。当我悬停鼠标时,只有单个单元格突出显示。我试过这种方法:boolMyTabWidget::eventFilter(QObject*target,QEvent*event){if(target==ui->MyTableWidget){//JusttoprinttheeventtypeqDebug()type();}}输出:EventType:13。`(13=QEvent::Move)`我已经失去了谷歌搜索。但没有得到任何适当的解决方案。是否有任何其他方法可以满足我的要求(在鼠标悬停时突出显示整行)?请帮忙。提前致谢。编辑:请引用

c++ - 在 Qt 中将 dataChanged() 与 QTreeView 一起使用时, 'bottomRight' 是什么意思?

当使用dataChanged(constQModelIndex&topLeft,constQModelIndex&bottomRight)signalwithaQTableView时,很容易理解topLeft和bottomRightQModelIndex,但我将dataChanged()与QTreeView一起使用时,会与bottomRight混淆。bottomRight到底是什么意思?我可以通过一次emitdatachanged()信号更新整个TreeView吗? 最佳答案 来自模型的dataChanged()信号更新View。代

c++ - 在 QTreeView 中查找 QModelIndex 的(视觉)位置的更简单方法

我对计算QTreeView中节点的物理位置很感兴趣,但找不到一种方法来执行此操作(除了自己计算,考虑到稳健性,这很麻烦且容易出错QTreeView)。是否有找到与QModelIndex关联的数据绘制位置的标准方法(类似于indexAt()将位置映射到的方式)QModelIndex)? 最佳答案 QAbstractItemView中有一个方法完全符合我的需要:签名是:virtualQRectvisualRect(constQModelIndex&index)const 关于c++-在QTr
12