问题标签 [pyside2]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
663 浏览

python - PySide2 QWizard 非线性页面

我正在尝试将我的代码从 PyQt5 更改为 PySide2。我的大部分脚本只需将导入从 PyQt5 更改为 PySide2,它的工作原理是一样的。但是,我尝试将 Qt 文档中的许可向导示例从 PyQt5 改写为 PySide2。在 PyQt5 中它运行良好,但是,在 PySide2 中,我收到退出代码 139 的错误(被信号 11:SIGSEGV 中断)。PySide2 qwizard 代码用于线性向导,如类向导示例,工作正常。有谁知道为什么非线性向导会失败以及为什么会出现该错误?

谢谢

下面的代码适用于 PyQt5。用 PySide2 替换 PyQt5 我得到一个错误

进程以退出代码 132 结束(被信号 4:SIGILL 中断)

0 投票
1 回答
1080 浏览

python - 在 Qlistview 中查找价值索引

我正在使用 PySide2 并想在 QListView 中搜索一个值并选择该行。就像你可以.findText(string_to_search_for)在 QComboBox 上一样。如何在 Qlistview 中搜索值并返回索引?

一些附加信息:

我的 QListView 的模型是我编写的 QAbstractTableModel 的实现。该模型填充了来自数据库的数据,第一列是 id,第二列是数据库项的名称。QListView 仅显示第二列。这是我的 QTableModel 代码。

0 投票
0 回答
509 浏览

python - 发出将信号代码从 PyQt4 移植到 PySide2

PySide2 中的 QtCore.QObject.connect 不像 PyQt4 中那样工作。信号订购接缝是问题所在。它是已知的错误还是 PySide2 不支持的功能?任何帮助将不胜感激,谢谢你,埃里克

工作示例:(抱歉,我无法缩短说明问题的时间)

通常 PySide2 下的输出抱怨信号和槽没有被排序。

QMetaObject 'BaseEditor' 中的信号和槽没有正确排序,这可能会导致问题。

  1. 信号 initFirstTimeDONE(object)

  2. 插槽 aclick(object)

  3. 信号 optionChangeDONE(object)


0 投票
1 回答
1100 浏览

qml - 无法将 QtQuick Controls 2 与 Pyside 2 一起使用

我已经设置:

Python 3.5.3 虚拟环境编译了 Pyside 2 提交 fafd92f428d51bdd56c90a73149c441773dd9155(因为最近的 2 个提交存在缺少 qrandomgenerator 文件的问题)。

使用 Qt 5.9.3、MSVC2015 x64 和 cmake 3.10.1 完成编译

我正在尝试将其设置为开始使用 QML,更具体地说是 Material Style。但是,当我运行我的应用程序时,如果 QML 导入 QtQuick.Controls 2.0 或更高版本,engine.rootObjects() 似乎返回一个空列表。我可以导入 QtQuick.Controls 版本 1.0 - 1.5。编译时我错过了什么吗?还是我的代码有问题?

代码如下:

Python

QML

我从Qt Quick Controls 2的文档中获取了这些版本号。

0 投票
1 回答
1341 浏览

python - QItemDelegate 复选框

所以,我在 Maya 中使用 python 和 PySide2 来制作自定义工具。

我有一个模型(QTableModel)和一个 QTableView。

模型中的每一行都会有一堆信息和一个复选框。

我必须做一个 QItemDelegate 并将其用作复选框。那也行。我无法确定该代表是否已被选中。

我通过模型迭代获取其数据(将其存储在节点中的 Maya 场景中)

碰巧每行中的第一项是一个复选框(代表)。在最终的数据数组中,当我真的想获得它的状态时,我最终得到了实际的 QItemDelegate 对象,检查与否,但它没有 isChecked() 方法。

关于如何获得它的想法?

非常感谢!

######## 编辑 1

因此,该模型确实具有评论中提到的标志:

我认为我做错了代表,正如我承认的那样,我在网上找到了这个片段,我试图理解它......但它是这样的:

然后,在 TableView:

它有帮助吗?(如果你有 Maya 2017,我可以给你整个代码......这有点乱,因为我把它用作学习练习!

谢谢你。

############ 编辑 2

表视图:

模型:

代表在上面的编辑 1 中。

然后我猜你仍然需要循环和标题来启动这个模型:

我希望这样做。

谢谢你。

##### 编辑 3

我在模型中有这个自定义方法:

我使用它将模型转换为字典,因此我可以将其序列化并存储为 Autodesk Maya 中节点的字符串属性。它运行正常,但它从第一列获得的信息始终为无。我必须以不同的方式检索它吗?

0 投票
1 回答
462 浏览

python - QAbstratctTableModel - removeRows

代码差不多完成了。这是交易:

它是 python 和 PySide。我有一个 QAbstractTableModel 和一个 QTableView。

我无法正确删除行。我认为问题出在行的索引中,我删除了其中一个...

这是我使用的按钮委托:

这是 cellButtonClicked 方法,它位于表格视图下:

这是模型 removeRow 方法:

我认为,主要问题是当我删除一行时,它不会更新模型的索引。因此,当我再次单击任何删除按钮时,它开始 de removeRow() 的索引不再与模型的 rowCount 匹配,因此我无法构建要从模型数据中删除的数组。

有意义吗?如果您需要更多代码,请告诉我您需要什么。

0 投票
1 回答
466 浏览

python - 无法在没有 hack 的情况下让 QAbstractListModel 子类在 PySide2 上工作

使用正在进行的 PySide2(能够使用 Qt5),我有以下代码:

main.qml:

主要.py:

在main.pyengine结束时对对象的 3 个方法调用是这样的,因为:

  1. Unable to assign [undefined] to QString如果我使用,我会得到:

    /li>
  2. ReferenceError: listModel is not defined如果我使用,我会得到:

    /li>

我的方法是正确执行此操作的唯一方法吗?我上面第一个项目符号中的代码不应该也可以工作吗?

0 投票
1 回答
630 浏览

python - 一个模型,两个不同的视图 - PySide

我有 4 列的 QAbstractTableModel。

我正在尝试在视图(QTableView)上显示前 3 列,当在此类视图上选择一行时,第二个视图(QListView)应显示模型的第 4 列。

我发现了一些关于 QProxyModel 的东西,但我很难把注意力集中在它上面。还有一个“解决方案”,我在这里找到了类似的东西,但不知何故我想要相反的结果。

我试图显示的数据是这样的: [['green', 'car', 'available',['a','b','c','d']]]

因此,在 Table View 上它会显示:绿色 - 汽车 - 可用。当点击这样的行时,列表视图将在最后一个位置显示数组:a - b - c - d。

我希望这是有道理的。

关于方向、文档、示例的提示?

感谢您的时间。

0 投票
1 回答
560 浏览

python - 从 QAbstractTableModel 类中访问视图和代理模型?

使用QTableViewand QAbstractTableModel,我希望能够在表格中选择多个单元格并进行编辑影响所有选定的单元格。这就是我目前的做法,其中包括将view( QTableView) 和proxy_model( QSortFilterProxyModel) 传递到类中,以便我可以访问它们(以获取适当的行和列):

我怀疑我不必通过viewproxy_model进入班级,并且可以通过其他方式访问这些对象。这是可能的,如果是这样 - 怎么做?


我知道我的示例是特定于 Python 的,但我的问题实际上是一个与绑定无关的问题,所以我也用qt.

0 投票
1 回答
912 浏览

python - QColorDialog 和 QItemDelegate

我有一个 QTableView,我在其中使用 QItemDelegate 作为按钮。我正在尝试更改按钮的颜色,所以当我单击它时,我调用了 QColorDialog。但是后来我无法将颜色发送回按钮。

到目前为止,情况如下:

按钮和 QColorDialog:

下一步是什么?我尝试将委托初始化中的按钮声明为self.btn = QPushButton(),然后在 onCLick 方法中重用它,但按钮甚至没有以这种方式绘制。

一些启示?

谢谢!

编辑 1

模型:

表视图:

单击单元格时,我想选择自定义颜色,将其显示在那里,然后设置数据。

单击该行的第一个单元格时,我希望能够为其选择一种颜色,并将其保存在模型中。

谢谢你。