Python 如何禁用按钮,除非编辑字段为';你没有空吗?

Python 如何禁用按钮,除非编辑字段为';你没有空吗?,python,qt,pyside,qlineedit,qpushbutton,Python,Qt,Pyside,Qlineedit,Qpushbutton,我有一个QLineEdit字段和一个QPushButton。 只要QLineEdit为空,则应禁用该按钮 如何做到这一点?好吧,我将总结他们在评论中所说的,一些代码如下 self.btnButton.setDisable(True) self.leInput.textChanged.connect(self.disableButton) def disableButton(self): if len(self.leInput.text()) > 0: self.bt

我有一个QLineEdit字段和一个QPushButton。 只要QLineEdit为空,则应禁用该按钮


如何做到这一点?

好吧,我将总结他们在评论中所说的,一些代码如下

self.btnButton.setDisable(True)
self.leInput.textChanged.connect(self.disableButton)
def disableButton(self):
    if len(self.leInput.text()) > 0:
        self.btnButton.setDisable(False)

是的,信号/函数名称是显而易见的,你需要更多地查看文档/导师

好吧,我将总结他们在评论中所说的,一些代码如下

self.btnButton.setDisable(True)
self.leInput.textChanged.connect(self.disableButton)
def disableButton(self):
    if len(self.leInput.text()) > 0:
        self.btnButton.setDisable(False)

是的,信号/函数名称很明显,您需要在docs/tutor上查看更多信息这里是一个单行解决方案:

self.textBox.textChanged[str].connect(lambda: self.myBtn.setEnabled(self.textBox.text() != ""))
您仍然必须将按钮的初始状态设置为False。不过,你可以在声明中这样做。e、 g

self.myBtn = QtGui.QPushButton("My Button", enabled=False)

以下是一个单行程序解决方案:

self.textBox.textChanged[str].connect(lambda: self.myBtn.setEnabled(self.textBox.text() != ""))
您仍然必须将按钮的初始状态设置为False。不过,你可以在声明中这样做。e、 g

self.myBtn = QtGui.QPushButton("My Button", enabled=False)

最初使按钮处于禁用状态;然后在EditField上,一旦它接受了一些输入,让它修改按钮-如果有文本,它将启用按钮,如果用户删除了所有文本,则禁用按钮。您可能想要签出。当。。。嗯,它的文本会改变,然后你可以检查当前文本是什么,并相应地设置你的按钮状态;然后在EditField上,一旦它接受了一些输入,让它修改按钮-如果有文本,它将启用按钮,如果用户删除了所有文本,则禁用按钮。您可能想要签出。当。。。嗯,它的文本会发生变化,然后您可以检查当前文本是什么,并相应地设置按钮状态。