在我的初始化函数中,我已经定义了一个错误消息框,如下所示:
self.error_msg = QtGui.QMessageBox()
self.error_msg.setIcon(QtGui.QMessageBox.critical)
self.error_msg.setWindowTitle("Error")
self.error_msg.setDetailedText("")
在另一种方法上,我尝试通过设置错误文本来调用这样的消息框:
def detectRoot(self):
euid = os.geteuid()
if euid != 0:
print "need to be root to run this program"
self.logger.error("Not root, program exited")
self.error_msg.setText("You need to be root to run this program")
self.error_msg.exec_()
exit(1)
但是,我不断收到消息pyqt / python错误:
self.error_msg.setIcon(QtGui.QMessageBox.critical)
TypeError: QMessageBox.setIcon(QMessageBox.Icon): argument 1 has unexpected type 'builtin_function_or_method'
答案 0 :(得分:2)
QMessageBox :: NoIcon :消息框中没有任何图标。
QMessageBox ::问题:表示邮件正在提问的图标。 QMessageBox ::信息:一个图标,表示该消息没有任何异常。 QMessageBox ::警告:一个图标,表示该消息是警告,但可以处理。
QMessageBox ::严重:表示邮件代表严重问题的图标。
将QtGui.QMessageBox.critical
更改为QtGui.QMessageBox.Critical