gpt4 book ai didi

python-3.x - 新型信号和插槽支持,PyQt

转载 作者:行者123 更新时间:2023-12-04 01:18:26 26 4
gpt4 key购买 nike

我正在使用 PyQt4 (Python3) 编写一个 GUI 应用程序。我的一个 friend 指出使用 pyuic4 是一种不好的做法,并向我介绍了 uic 模块和按名称连接插槽功能。他没有时间解释更多,我的引用资料也很短,我无法从他们那里领会到想法(uic moduleLoadingUIFilesAtRuntimeconnecting slots by name)。

在 StackOverflow 上至少有一个 related question但是那里与文献的链接断开了。

我可以按照标准教程使用 pyuic 做简单的 GUI,但现在感觉有点困惑...欢迎任何好的示例和/或引用。

最佳答案

首先,使用pyuic4当然不是“坏习惯”。

可以通过三种主要方式将 PyQt4 UI 放入您的代码中:

  • 自己手写
  • 使用pyuic4自动生成可导入的python模块
  • 使用uic包在运行时直接加载ui文件

其中,前两个是迄今为止最常见的,您将遇到的大多数文档、教程、建议等都将使用这些方法。

可以在 this section 中找到 PyQt4 教程的良好资源。的 PyQt4 Wiki .然而,我可能应该指出,尽管它们仍然相关,但其中许多已经很老了,因此仍在使用旧式信号和槽。

然而,新旧样式之间的区别并不难理解,所以可能只需要一个简单的例子。

这是将按钮点击信号连接到处理程序方法(也称为插槽)的旧式方法:

self.connect(self.button, QtCore.SIGNAL('clicked()'), self.handleButtonClick)

这是新式的方式:

self.button.clicked(self.handleButtonClick)

如您所见,新样式更简单,更符合 Python 风格。另一方面,旧式与使用 C++ 连接信号的方式非常相似(因此在某些情况下仍然有用)。

如果您在编写 GUI 时遇到连接信号的问题,您可以随时在这里提问 - 但如果您提出包含示例代码的具体问题,则更容易获得好的答案。

关于python-3.x - 新型信号和插槽支持,PyQt,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8882000/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com