python - pycharm中类的错误未解决的属性引用'pushButton'
问题描述
我正在做pyqt5
一个项目,我正在设计 uiqt designer
并在pycharm
. Ui 有一个按钮和标签。单击按钮后,标签值将更改。下面是代码:
import sys
from PyQt5.uic import loadUi
from PyQt5.QtWidgets import QApplication, QMainWindow
class ROCKET(QMainWindow):
def __init__(self):
super(ROCKET, self).__init__()
loadUi('ui/gui.ui', self)
self.pushButton.clicked.connect(self.btn_click)
def btn_click(self):
self.label.setText("CLICKED")
app = QApplication(sys.argv)
window = ROCKET()
window.show()
app.exec_()
pushButton
Pycharm 对and给出警告label
:
Unresolved attribute reference 'pushButton' for class 'ROCKET'
但如果我正在运行代码,我会得到正确的输出。如何删除这些警告并使代码正确。
解决方案
您可以将小部件称为主窗口的属性这一事实是 PyQt5 通过loadUi
. PyCharm 抱怨,因为它没有看到您pushButton
为您的类明确定义属性。
绕过警告的一种方法是显式定义属性:
self.pushButton = self.findChild(QPushButton, "name_of_push_button")
self.pushButton.clicked.connect(self.btn_click)
推荐阅读
- python - 硒如果找不到元素= nan
- python - 在 Django 中的 ID 后附加文本
- php - 删除时出错 - 只能通过引用 PHP/MYSQLI 传递变量
- ios - 用 2 个数组快速填充 UItableViewCell
- php - 从 PHP 运行 PSQL 查询
- azure-devops - 无法将 Azure SQL 与 Azure DevOps Server 2019 一起使用 - (Azure 政府)
- bash - 标准输出和标准错误
- excel - 另一个工作表单元格中的公式错误,其中包含带有 activesheet.name 的超链接
- xcode - xcode 10.1 架构 arm64 的未定义符号
- c# - 检测到与 ASP.NET SignalR 服务器的连接尝试。此客户端仅支持连接到 ASP.NET Core SignalR 服务器