以下程序(我的真实代码的摘录)
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
调用相关
使用不同类的实例按类调用方法; 传递PyQt4.QtGui.QPushButton.QPushButton而不是 PyQt4.QtGui.QMessageBox.QMessageBox。这是故意的吗?
调用参数不正确;参数'QString_1'未填充
类型检查器;预期类型'QMessageBox',改为'QPushButton'
和一个与PyQt connect
电话相关的警告
在'function'中找不到引用'connect'
我知道如何解决/避免这些警告吗?
答案 0 :(得分:1)
我遇到了同样的问题。您正在向函数传递QPushButton,在您的情况下为“ w”。该函数需要一个QMessageBox。因此,只需像这样传递它即可:
let mainStoryboardIpad : UIStoryboard = UIStoryboard(name: "Main", bundle: nil)
let yourView = mainStoryboardIpad.instantiateViewController(withIdentifier: "yourView") as! NewnoteViewController
let navi = self.getVisibleViewController(self.window!.rootViewController) as! UINavigationController
navi.pushViewController(yourView, animated: true)