我有一个QLineEdit对象,并且内置信号'returnPressed'被连接以执行一些任务。但是当我点击返回时,我想通过闪烁不同的颜色一小段时间来通知用户关键按下并反转回原始颜色。虽然,这可以通过设置样式表和time.sleep()函数来改变背景颜色来完成,但我想要一个直接的单行方法来实现这一点。
答案 0 :(得分:0)
正如我在评论中建议的那样,您需要避免使用time.sleep()
。相反,您可以使用QTimer
。 QTimer
的静态singleShot
方法可以在等待500毫秒后调用函数。在这种情况下,您调用的函数可以是lambda函数,它设置样式表。
self.lineEdit_CycleTime.setStyleSheet("background-color: rgb(5, 8, 5)")
QtCore.QTimer.singleShot(500, lambda :self.lineEdit_CycleTime.setStyleSheet("background-color: rgb(125,125,125)") )