问题标签 [pyqt6]
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.
python-3.x - PyQt6:AttributeError:类型对象'QImage'没有属性'Format_RGB888'
我正在尝试将代码从 PyQt5 移植到 PyQt6,但出现以下错误:
任何 Format_* 都会发生这种情况,尽管在 PyQt6 QImage 文档中存在这些格式。
Python 3.9 与 miniforge 一起安装,Mac M1 与 OS X 11.5.2
谢谢。
python - 如何防止 QGraphicsItem 相互碰撞
我正在制作一个具有图形场景的应用程序,您可以在其中拖动项目并在场景中移动它们。
我试图防止场景中的项目之间的勾结,并看到了这个问题Prohibit collision of a可移动的 QGraphicsItem 与其他对我来说效果不佳的项目(可能是因为我使用的是 PyQt6 并且从 qt 翻译得不是很好)。
我正在使用 QGraphicsEllipseItem 和 QGraphicsRectItem 但 QGraphicsEllipseItem 的每个解决方案都会有很大帮助。
我知道我只需要在发生碰撞的轴上阻止运动,但我没有设法实现它。我试图通过项目正在碰撞的项目列表来处理 quth multipule collusions。
我正在使用 PyQt6,但任何事情都会有所帮助
以下是我尝试解决的方法:
python - 在 PyQt6 中使用 QStringEncoder 时出现属性错误
我对以下代码有错误。当我尝试运行它时,我得到一个
我最初在导入这个库时遇到了问题,但是当我实施不同的导入方法时,它们得到了修复。其他库工作正常,只是这个引发了这个错误。代码包含在下面。
python - PyQt6:AttributeError Qt
我需要将以下代码从 PyQt5(它在那里工作)转换为 PyQt6:
这是错误:
我已经尝试过这个:
它说:
python - 在 PyQt 中将 QTreeWidget 转换为嵌套字典
我想这样做的原因是允许用户使用 a 创建文件树QTreeWidget
,然后我想将该树提取到嵌套dict
结构中,并以某种方式保存它。我考虑过使用txt
文件和eval
方法将所有保存的方案简单地加载到某个数组或另一个字典中,其中键是方案的名称,因此用户可以简单地选择一个方案或根据需要对其进行编辑。这自然导致我必须在用户选择编辑后将保存dict
的内容转换回。QTreeWidget
现在虽然这是我的问题。
我已经能够QTreeWidget
使用递归函数成功导航。我挣扎的是创建嵌套dict
.
以下是我到目前为止提出的内容:
我知道这是错误的。这就是我需要帮助的原因。
上面的代码生成如下dict
形式QTreeWidget
{'a':'E', 'b':{'a':'E', 'c':'E'}}
但它应该是:
{'a':'E', 'b':{'a':'E'}, 'c':'E'}
E 仅仅意味着不会有更多的子目录。
我已经看到了一些其他的实现,但是它们非常令人困惑,我不太明白它们的逻辑。这与我在这里提出的问题几乎重复,但尚未得到回答。我尝试过调整他的实现,但它(无论如何对我来说)很复杂,很难适应我的程序结构。
python - 如何将项目符号列表重置为普通文本并返回 QTextEdit
我正在尝试将选定的行设置为项目符号并返回,这里我将缩进设置为 0,它会破坏项目符号,但列表属性仍然为 true,因此此代码不会再次将同一行设置回项目符号列表,如何清除底层列表格式,或者最好的方法是什么?
python - QListWidget 复选框与项目选择同步
当我尝试设置 QListWidget 时遇到了一个奇怪的问题,我可以在其中单击复选框以选择项目。我编写的当前代码不会使这种模式保持一致。如下表所示。
例如,当我单击“apple”复选框时,我希望“apple”项目会被选中,但有时会取消选中“橙色”。有时它会按我想要的方式工作,但它是不可预测的。我已经阅读了几乎所有StackOverflow 线程处理了这个问题,但是没有一个能解决,我的环境是 Mac Big Sur,Python3.7.9,PySide6 6.2.0。
我下面有一个MVE,有人可以帮我看看吗?欣赏它。卡在这里很久了。
更新:第一个答案非常复杂,因为我更深入地了解还有更多要学习的东西。最后,我找到了一个更容易实现的替代解决方案。我为将来可能需要它的任何人发布核心部分。
python - 如何在组合框标题和项目之间添加填充
所以我有一个 QComboBox,我想在顶部栏和项目之间添加一些填充。这是代码:
但我好像没有得到一个:(
我尝试过的事情:
- 将 padding-top 添加到
QComboBox QAbstractItemView
- 添加 padding-top
QComboBox QAbstractItemView
并将背景颜色设置为透明。 - 添加边距顶部