gpt4 book ai didi

pycharm - 似乎无法在简单的 PyQt 程序中修复 PyCharm 警告

转载 作者:行者123 更新时间:2023-12-03 17:38:14 25 4
gpt4 key购买 nike

以下程序(我的真实代码的摘录)

from PyQt4 import QtGui
import sys
from PyQt4.QtGui import QMessageBox


def main():
app = QtGui.QApplication([])

w = QtGui.QPushButton("Test")

def on_pressed():
print("Pressed")
QMessageBox.warning(w, 'Info', 'Button Pressed')

w.pressed.connect(on_pressed)
w.show()

sys.exit(app.exec_())


if __name__ == '__main__':
main()

在 PyCharm 中触发与 Code/Inspect Code... 相关的以下三个警告(例如,在运行 QMessageBox.warning 时)称呼
  • Calling a method by class using an instance of a different class; Passing PyQt4.QtGui.QPushButton.QPushButton instead of PyQt4.QtGui.QMessageBox.QMessageBox. Is this intentional?

  • Incorrect call arguments; Parameter 'QString_1' unfilled

  • Type checker; Expected type 'QMessageBox', got 'QPushButton' instead


  • 和一个与 PyQt 相关的警告 connect称呼
  • Cannot find reference 'connect' in 'function'


  • 知道如何解决/避免这些警告吗?

    最佳答案

    我遇到了同样的问题。您将函数传递给 QPushButton,在您的情况下为“w”。该函数需要一个 QMessageBox。所以只需像这样传递一个:

    from PyQt4 import QtGui
    import sys
    from PyQt4.QtGui import QMessageBox


    def main():
    app = QtGui.QApplication([])

    w = QtGui.QPushButton("Test")
    dialog = QtGui.QMessageBox()

    def on_pressed():
    print("Pressed")
    QMessageBox.warning(dialog, 'Info', 'Button Pressed', 'Okay')

    w.pressed.connect(on_pressed)
    w.show()

    sys.exit(app.exec_())


    if __name__ == '__main__':
    main()

    关于pycharm - 似乎无法在简单的 PyQt 程序中修复 PyCharm 警告,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43238014/

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