问题标签 [pyside6]

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 投票
0 回答
49 浏览

python - PySide6 中的 __feature__

我想使用 PySide6 中的__feature__模块来使用snake_case。根据Qt 的博客文章,我应该能够像这样使用它:

但是,我不能使用__feature__因为我的程序不知道它来自哪个包。我尝试在没有导入行的情况下执行上面的代码,但这仍然不起作用。我该怎么办?

0 投票
0 回答
88 浏览

python - PySide 代码产生一个空白窗口。在保持课程的同时有任何解决方案吗?

0 投票
1 回答
240 浏览

python - 检测何时按下 Ctrl(或其他修饰键)的正确方法

我想以是否按下修饰键 (Ctrl) 为条件进行操作。我发现的一种解决方法是安装一个事件过滤器并用于QApplication.queryKeyboardModifiers()检测何时Ctrl被按下,并QApplication.keyboardModifiers()检测何时Ctrl被释放:

但是,我担心这是对.queryKeyboardModifiers()and.keyboardModifiers()函数的意外使用,因此以后可能会导致更多麻烦。是否有适当的方法来检测何时单独按下/释放修改键(即没有按下任何其他键)?

虽然我使用的是 PySide6,但如果它们有帮助,我会接受 C++ 或 PyQt 中的答案。

0 投票
1 回答
92 浏览

qt - QKeyEvent.nativeModifiers() 是什么?

QKeyEvent.nativeModifiers() 是什么?文档没有说太多(https://doc.qt.io/qtforpython/PySide6/QtGui/QKeyEvent.html#PySide6.QtGui.PySide6.QtGui.QKeyEvent.nativeModifiers)。据我了解,通过在 QKeyEvent 对象上调用此方法返回的整数表示修饰键(Ctrl、Shift、Alt 等)的完整状态。

此外,我会假设这些整数和它们各自的修饰符状态之间的映射是系统的,那么有没有办法测试给定的修饰符状态是否包含特定的修饰符(例如,通过使用“&”运算符)?

重要的是,本机修饰符是否跨平台,以便 PC 上的 Left Ctrl 按键返回与 Mac 上的 Left Command 相同的整数(因为 Qt.Key_Control 对应于 MacOS 命令键)?

0 投票
0 回答
119 浏览

python - 如果有 UI 文件,如何在 PySide6 中制作关闭按钮

我想在 PySide6 中创建一个简单的对话框(我目前正在学习 Python),但我不知道如何从我的 ui 文件中调用按钮(我想使用的按钮被调用closeButton)所以我可以让它关闭单击它时的窗口。

编辑:我正在使用 QWidgets

编辑2:这是一个“小”代码片段

0 投票
0 回答
448 浏览

qt-designer - 如何使用 pyside6-uic 将 .ui 文件编译为 python,但激活了 snake_case 和 true_property

新版 Qt for Python (PySide6) 允许使用名为 true_property 的新功能,当您从头开始手动构建 UI 时,您可以轻松使用此功能,但如果您使用 Qt Designer 并且想要将 .ui 文件转换为python 使用 pyside6-uic 生成 python 代码时不考虑该功能。所以我想知道是否有标志选项或命令告诉 pyside6-uic 使用 true_property。

0 投票
0 回答
6 浏览

python - QTableView 选择改变时触发动作

我试图在选择 QTableView 的单元格时触发该操作。我正在使用 selectionChanged 但它仅第一次触发该操作,并且更改单元格选择不会再次触发该操作。我做错了什么。

0 投票
1 回答
123 浏览

python - 如何访问可移动 QGraphicsItems 的位置偏移量?

我最近开始使用 Python Qt,我正在尝试制作一个单击并拖动地图编辑器,该编辑器可以读取和写入 .json 文件。到目前为止,我的进展是让 QGraphicsView 用矩形准确地动态显示整个房间布局。但是现在我不知道如何访问每个矩形的 x 和 y 偏移,因为它们都可以使用 setFlag(QGraphicsItem.ItemIsMovable) 属性单独移动。

这是我的代码的简短版本:

这是json:

基本上,在地图编辑器上移动后,我需要更新 json 中每个房间的偏移量。解决这个问题的最佳方法是什么?

0 投票
1 回答
28 浏览

python - 创建鼠标事件后保留QGraphicsItem多选移动

我正在使用动态创建的 QGraphicsRectItems 使用 Python Qt 开发点击和拖动地图编辑器。我需要在 QGraphicsRectItem 类中添加 3 个鼠标事件函数,以便在移动项目后释放鼠标时这些矩形自动捕捉到 25x15 网格,这可以正常工作。

问题是在添加这些功能后,我不再能够在选择时一次移动多个矩形。我仍然可以通过将鼠标拖动到它们上同时选择多个矩形,但尝试移动整个选择只会移动其中一个项目。

这是我的代码示例:

如何恢复默认设置的多选和移动系统,同时保留允许每个对象捕捉到网格的鼠标功能?

0 投票
1 回答
777 浏览

python - 使用 PyInstaller 打包的 PySide6 应用程序启动时没有错误

我正在尝试创建一个独立的 PySide6 应用程序可执行文件。我的设置是:

  • Python venv
  • 蟒蛇 3.9
  • PySide 6.1.0
  • 安装程序 4.3
  • 64 位 Windows 10

这是一个像这样的简单脚本:

该应用程序作为脚本运行良好。但是当我使用 Pyinstaller 将其转换为 exe 时,如下所示:

该应用程序不会立即启动并退出,并且不会出现任何有意义的错误。控制台输出是这样的:

我的实际应用比这更复杂。我只是使用上面的示例来查看它是否可以作为 exe 工作,但两者都有相同的问题。

注意:我查看了本网站和其他地方的所有相关问题,但没有任何帮助。

注意:下面第一条评论中提到的关于 qt platform not found 的问题不是我遇到的问题。正如我在下面的评论中提到的那样,我已经解决了这个特定的错误。